فایل های هدر یا کتابخانه
در هر برنامه فایل های با پسوند h. وجود دارند. ما این فایل ها را با نام هدر می شناسیم. این فایل ها برای ساده تر کردن کدها در هنگام برنامه نویسی به کمک ما می آیند مثلا فایل هدر lib–AT91SAM7x256.h دستورات مربوط به میکرو کنترلر at91sam7x256 را به زبان گفتار نزدیک می کند. ما همچنین می توانیم هدر یا کتابخانه دلخواه خود را بنویسیم. در نرم افزار Keil هدرهای زیادی وجود دارد که در این پست از مبحث آموزش برنامه نویسی و راه اندازی میکروکنترلرهای ARM با آن ها آشنا خواهیم شد.
ریجسترهای مخصوص به پورت
این دستورات و رجیستر ها برای هدرهای libe–AT91SAM?????????.h گفته می شود برای اجرای این دستورات نیاز است که این کتابخانه ها را در برنامه خود فراخوانی کنید.
مثلا برای میکرو at91sam7x256
1 2 3 |
# include # include |
یا میکرو at91sam7s64
1 2 3 |
# include # include |
قرار دادن پورت به عنوان ورودی یا خروجی
دستور زیر پایه y از پورت x را به عنوان خروجی تعریف می کند.
1 |
AT91F-PIO-CfgOutput (AT91C-BASE- PIOx,AT91C-PIO-Pxy); |
دستور زیر پایه y از پورت x به عنوان ورودی تعرف می کند.
1 |
(AT91F-PIO-GetInput (AT91C-BASE- PIOx), AT91C-PIO-Pxy); |
دستور زیر پایه y از پورت x را صفر می کند.
1 |
AT91F-PIO-ClearOutput (AT91C-BASE- PIOx,AT91C-PIO-Pxy); |
دستور زیر پایه y از پورت x را یک می کند.
1 |
AT91F-PIO-SetOutput (AT91C-BASE- PIOx,AT91C-PIO-Pxy); |
مثال:
به Portb.0 میکروکنترلر at91sam7x256 یک کلید و به Protb.19 یک LED متصل کرده ایم. برنامه ای بنویسید که با تحریک کلید لامپ LED روشن و با قطع کلید (تحریک) لامپ LED خاموش شود.
1 2 3 4 5 6 7 8 9 10 11 |
# include # include Int main ( void ){ AT91F-PIO-CfgOutput (AT91C-BASE- PIOBx,AT91C-PIO-PB 19); (AT91F-PIO-GetInput (AT91C-BASE- PIOB), AT91C-PIO-PB 0); If ((AT91C-PIO-PB 0 ==(0)) AT91F-PIO-SetOutput (AT91C-BASE- PIOB,AT91C-PIO-PB 19); else AT91F-PIO-ClearOutput (AT91C-BASE- PIOB,AT91C-PIO-PB 19); } |
سلام اول از همه تشکر می کنم به خاطر آموزش های خوبه سایتتون و یک سوال داشتم من تمام مراحل نحوه ی ایجاد پروژه در نرم افزار keil uvision رو انجام میدم و وقتی برنامه رو تو نرم افزار کپی می کنم خط دوم برنامه که معرفی کتابخونه ی میکرو ارور میده میگه فایل کتابخونه پیدا نشد
fatal error: ‘libe – at91sam7x256.h’ not found
شما می دونید مشکل از کجاست؟