همان طور که میدانید TRISB یکی از دجیستر های پورت B است
به وسیله این رجیستر ورودی و خروجی هر پین در پورت B مشخص میشود
چنانچه بنویسید TRISB = 0 تمامی پین های پورت B به صورت خروجی پیکر بندی میشوند و
چنانچه بنویسید TRISB = 255 تمامی پین های پورت B به صورت ورودی پیکر بندی میشوند
در کامپایلر C18 برای دست یابی جداگانه به هر بیت از TRIS باید کلمه .bits را آورده و بعد نام بیت مورد نظر را بنویسید , برای مثال TRISB1 که در نتیجه داریم TRISBbits.TRISB1 که منظور بیت دوم رجیستر TRIS است
پس دستور TRISBbits.TRISB1=1 پین دوم پورت B را به صورت ورودی پیکر بندی میکند
و دستور TRISBbits.TRISB0=0 پین اول پورت B را به صورت خروجی پیکر بندی میکند
رجیسترهای TRIS هنگام روشن شدن میکرو به صورت پیش فرش مقدار 0XFF را دارند
LED_OFF مفهوم نیست
نا اميدي يه دروغ بزرگه که آدما به خودشون ميگن
تلاش يه حقيقت بزرگه که با صبر به ثمر ميرسه
همان طور که میدانید TRISB یکی از دجیستر های پورت B است
به وسیله این رجیستر ورودی و خروجی هر پین در پورت B مشخص میشود
چنانچه بنویسید TRISB = 0 تمامی پین های پورت B به صورت خروجی پیکر بندی میشوند و
چنانچه بنویسید TRISB = 1 تمامی پین های پورت B به صورت ورودی پیکر بندی میشوند
استاد عزیز و بزرگوارم جناب رمضانی؛ جسارتاً منظورتون قطعاً TRISB=255 هست که کل پورت B رو ورودی میکنه. :redface:
[quote author=soheilzahedy link=topic=65814.msg381819#msg381819 date=1344347915]
میشه یه توضیح دقیق درمورد این خط بدین از همتون ممنون مشم.
TRISBbits.TRISB0=0
TRISBbits.TRISB1=1
آقای رمضانی ببخشید الان من از پایه BR0میکرو استفاده کردم میخوام پایه BR1هم به برنامه ام اضافه کنم برای فعال کردن پورتم همون چیزای که برا پورت BR0نوشتم برا این بنویسم جواب میده اگه مبشه یه نمونه بزارین با تشکر
سلام
بله ، برای افزودن هر پین از پورت دیگه به همون شیوه که دوستان خدممتون گفتن اقدام کنین ، به عنوان مثال بعد از تابع main برنامه این عبارت رو بنویسین
void main(void){
TRISBbits.RB0=x;
}
که در صورت تنظیم این RB0 برای ورودی جای x مقدار 1 و در صورت تنظیم این پین به عنوان خروجی به جای x صفر قرار بدین.حالا برای تغییر محتوای پورت (در صورت تعریف پورت به عنوان خروجی)
PORTBbits.RB0=x;
بنویسین که خروجی با مقدار x (صفر یا یک)تغییر می کند(صفر و یا یک)
در صورتی که پین به عنوان ورودی تعریف شده باشه برای خواندن مقدایر ورودی پین مجددا از PORTBbits.RB0 استفاده کنین
هیچ دانش آموزی نیست که به در خانۀ دانشمندی آمد و شد کند, مگر این که خداوند برای هر گامی که برمی دارد عبادت یک سال را برایش رقم زند.
دیدگاه