القراءة والكتابة من دبابيس IO في C على mplab x ide

StackOverflow https://stackoverflow.com/questions/19848133

  •  29-07-2022
  •  | 
  •  

سؤال

لقد بدأت مؤخرًا العمل مع متحكم PIC32MX764F128H ، اعتدت على فعل الأشياء على PIC18 و PIC24 ... AKA باستخدام برنامج التحويل البرمجي CCS C ، لذلك أشعر بالفضول إذا كان أي شخص يعرف كيفية القيام ببعض رمز C الأساسي حقًا لشريحة 32 بت في MPLAB X. أريد فقط أن يأخذ الرمز الإدخال من دبوس تمثيلي ووضع القيمة المعاكسة في الإخراج دبوس.

على سبيل المثال ، إذا كان PIN_B0 مدخلًا ولديّ 3.3 فولت موصوفة به (تستخدم هذه الشريحة 3.3 لا 5 فولت) أود أن أقرأ PIN_C0 كـ 0V ، ولكن إذا تم تأريض PIN_B0 ، فأنا أرغب في قراءة إشارة عالية قدرها 3.3 الخامس

أنا صدئ للغاية في هذا التطبيق منخفض المستوى ولا يمكنني تذكر كيفية القيام بذلك في C. أدناه ، هناك بعض ما لدي حتى الآن في C ولكنه لا يتم تجميعه و MPLAB فظيعة في المساعدة في مشكلات الكود.

#fuses HS,NOLVP,NOWDT,PUT
int main()
{
   TRISB=0;//all of Port B is input
   TRISC=1;//all of Port C is output
   int RecvInput;
   while(true)
   {
      RecvInput = ??? //how do I get from Pin_B0 ??
      if(Recv==0)
      {
         //HOW DO I SAY PIN_C0 = HIGH
      }
      else //PIN_C0 = 0
   }
}
هل كانت مفيدة؟

المحلول

جرب هذا:

RecvInput = mPORTBRead();

ثم للإخراج:

mPORTBWrite(value);
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top