Advertisement
Guest User

Untitled

a guest
Dec 4th, 2016
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.18 KB | None | 0 0
  1. // 0X00 status = red, 0X80 output
  2. // 0X01 status = yellow towards green, 0X40 output
  3. // 0X02 status = yellow towards red, 0X40 output
  4. // 0X03 status = green, 0X20 output
  5. void main() {
  6. unsigned char status;
  7. TRISA = 0XFF;
  8. TRISC = 0X00;
  9. status = EEPROM_Read(0x10);
  10. while(1)
  11. {
  12. if(status == 0X00)
  13. {
  14. if(PORTA & 0X10)
  15. {
  16. PORTC = 0X80;
  17. }
  18. if(PORTA & 0X08)
  19. {
  20. Delay_10ms;
  21. Delay_10ms;
  22. }
  23. else
  24. {
  25. Delay_10ms;
  26. Delay_1ms;
  27. Delay_1ms;
  28. }
  29. status = 0X01;
  30. }
  31. else if(status == 0X01)
  32. {
  33. if(PORTA & 0X10)
  34. {
  35. PORTC = 0X40;
  36. }
  37. if(PORTA & 0X08)
  38. {
  39. Delay_5ms;
  40. }
  41. else
  42. {
  43. Delay_1ms;
  44. Delay_1ms;
  45. Delay_1ms;
  46. }
  47. status = 0X03;
  48. }
  49. else if(status == 0X02)
  50. {
  51. if(PORTA & 0X10)
  52. {
  53. PORTC = 0X40;
  54. }
  55. if(PORTA & 0X08)
  56. {
  57. Delay_5ms;
  58. }
  59. else
  60. {
  61. Delay_1ms;
  62. Delay_1ms;
  63. Delay_1ms;
  64. }
  65. status = 0X00;
  66. }
  67. else
  68. {
  69. if(PORTA & 0X10)
  70. {
  71. PORTC = 0X20;
  72. }
  73. if(PORTA & 0X08)
  74. {
  75. Delay_10ms;
  76. Delay_10ms;
  77. }
  78. else
  79. {
  80. Delay_10ms;
  81. Delay_1ms;
  82. Delay_1ms;
  83. }
  84. status = 0X02;
  85. }
  86. }
  87. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement