我正在做一个PIC单片机的串口通讯项目。我使用 CCS C For PIC 作为编程软件。代码现在工作得很好,但我想提高我的编程技能(我是一个初学者)。尤其是这些if
的声明让我很困扰。因为他们人太多了。我该如何改善这一点?
#define bt1 pin_a0
#define bt2 pin_a1
#define bt3 pin_a2
#define bt4 pin_a3
#define bt5 pin_a4
#define bt6 pin_c0
#define bt7 pin_c1
#define bt8 pin_c2
#define bt9 pin_c3
#define bt10 pin_c4
#define bt11 pin_d0
#define bt12 pin_d1
#define bt13 pin_d2
#define bt14 pin_d3
#define bt15 pin_d4
#define enable pin_c5
#define tx pin_c6
#define rx pin_c7
#int_rda
void rda_isr(void)
{
disable_interrupts(int_rda);
output_high(pin_d7);
}
void main()
{
set_tris_a(0xFF);
set_tris_b(0x00);
set_tris_c(0xFF);
set_tris_d(0xFF);
set_tris_e(0x00);
output_high(tx);
output_low(rx);
output_high(enable);
enable_interrupts(int_rda);
enable_interrupts(GLOBAL);
lcd_init();
while(TRUE)
{
if(input(bt1)) puts("\fbuton 1");
if(input(bt2)) puts("\fbuton 2");
if(input(bt3)) puts("\fbuton 3");
if(input(bt4)) puts("\fbuton 4");
if(input(bt5)) puts("\fbuton 5");
if(input(bt6)) puts("\fbuton 6");
if(input(bt7)) puts("\fbuton 7");
if(input(bt8)) puts("\fbuton 8");
if(input(bt9)) puts("\fbuton 9");
if(input(bt10)) puts("\fbuton 10");
if(input(bt11)) puts("\fbuton 11");
if(input(bt12)) puts("\fbuton 12");
if(input(bt13)) puts("\fbuton 13");
if(input(bt14)) puts("\fbuton 14");
if(input(bt15)) puts("\fbuton 15");
}
}
1条答案
按热度按时间9o685dep1#
1.将您的按钮针脚放入阵列中:
1.遍历这个数组