با توجه به مطالبی که دوستان لطف کردن نوشتن
این برنامه رو نوشتم
کد باینری خروجی (پین های خروجی پورت D) سون سگمنت رو یکی از دوستان گزاشته بود که مشکل داشت
تا 3 رو درست کردم
حالا مشکل
این تایمری که تعریف کردم
فقط یک بار مقدار X رو چک میکنه
بار دوم چکش نمیکنه :eek:
و مقدار اول رو استفاده میکنه
دوستان میشه راهنمایی کنید چطوری میشه X1 جدید رو به تایمر داد ؟
ضمنا رو برد من پور های c3وC2 خروجی نمیدن
مشکل از چیه ؟ :rolleyes:
مرسی
این برنامه رو نوشتم
کد:
$regfile = "M32def.dat" $crystal = 1000000 Config Portc.1 = Output ' Yekan Config Portc.2 = Output ' Dahgan Config Portc.3 = Output ' SadGan Config Portc.3 = Output ' HezarGan Config Portd = Output Declare Sub Shownumber(byval X As Integer) Declare Sub Sevenprint(byval X As Byte) Config Timer0 = Timer , Prescale = 1 On Ovf1 Sevenhandler On Ovf0 Sevenhandler Enable Timer0 Enable Interrupts Reset Portc Reset Portd Dim X0 As Byte Dim X1 As Byte Dim X2 As Byte Dim X3 As Byte Start Timer0 Do Dim I As Integer For I = 1 To 9 Call Shownumber(i) Wait 1 Next I Loop Sub Shownumber(byval X As Integer ) Dim M As Integer Dim B As Integer B = X Dim C As Integer C = 0 While B <> 0 B = X / 10 M = X Mod 10 X = B Select Case C Case 0 X0 = M Case 1 X1 = M Case 2 X2 = M Case 3 X3 = M End Select C = C + 1 Wend End Sub Sub Sevenprint(byref X As Byte) Select Case X Case 1 Portd = &B1111001 'show 1 Case 2 Portd = &B0100100 'show 2 Case 3 Portd = &B1111001 'show 3 Case 4 Portd = &B0110011 'show 4 Case 5 Portd = &B0010010 'show 5 Case 6 Portd = &B1011011 'show 6 Case 7 Portd = &B1110000 'show 7 Case 8 Portd = &B1111111 'show 8 Case 9 Portd = &B1111011 'show 9 End Select End Sub Sevenhandler: Reset Portc Reset Portd Set Portc.1 Call Sevenprint(x0) Waitms 1 Reset Portc.1 Set Portc.2 Call Sevenprint(x1) Waitms 1 Reset Portc.2 Set Portc.3 Call Sevenprint(x2) Waitms 1 Reset Portc.3 ''''''''''''''''''''''''' yekan ''''''''''''''''''''''''' Return
کد باینری خروجی (پین های خروجی پورت D) سون سگمنت رو یکی از دوستان گزاشته بود که مشکل داشت
تا 3 رو درست کردم
حالا مشکل
این تایمری که تعریف کردم
فقط یک بار مقدار X رو چک میکنه
بار دوم چکش نمیکنه :eek:
و مقدار اول رو استفاده میکنه
دوستان میشه راهنمایی کنید چطوری میشه X1 جدید رو به تایمر داد ؟
ضمنا رو برد من پور های c3وC2 خروجی نمیدن
مشکل از چیه ؟ :rolleyes:
مرسی
دیدگاه