简洁软件下载网站源码,网页游戏开服表怎么删,APP网站怎么做,房地产开发公司怎么注册一、系统方案 二、硬件设计 原理图如下#xff1a; 三、单片机软件设计 1、首先是系统初始化 void port_init(void) { PORTA 0xFF; DDRA 0x00;//输入 PORTB 0xFF;//低电平 DDRB 0x00;//输入 PORTC 0xFF;//低电平 DDRC 0xFF;//输出 PORTE 0xFF; DDRE 0xfE;//输出 PO…一、系统方案 二、硬件设计 原理图如下 三、单片机软件设计 1、首先是系统初始化 void port_init(void) { PORTA 0xFF; DDRA 0x00;//输入 PORTB 0xFF;//低电平 DDRB 0x00;//输入 PORTC 0xFF;//低电平 DDRC 0xFF;//输出 PORTE 0xFF; DDRE 0xfE;//输出 PORTD 0xff; DDRD 0xFB;//输出 PORTD 0xff; PORTF 0xFF; DDRF 0xFF;//输出 PORTG 0xFF; DDRG 0xFF;//输出 }
2、数码显示程序 unsigned char rev_buf[10]{0x00,0x00,0x00}; unsigned char display_flag0; unsigned char led_mode0; void display(void) { PORTF table[led_mode];
} 3、按键程序 if((PINA0x01)0x00)//按键 { delay_ms(200); while((PINA0x01)0x00); Uart0_Transmit(0x00); /发送数据/ Uart0_Transmit(0x0D); Uart0_Transmit(0x0A); } else if((PINA0x02)0x00)//按键 { delay_ms(200); while((PINA0x08)0x00); Uart0_Transmit(0x01); /发送数据/ Uart0_Transmit(0x0D); Uart0_Transmit(0x0A); } else if((PINA0x04)0x00) { delay_ms(200); while((PINA0x01)0x00); Uart0_Transmit(0x02); /发送数据/ Uart0_Transmit(0x0D); Uart0_Transmit(0x0A); } 4、核心算法程序 #pragma interrupt_handler uart1_rx_isr:iv_USART1_RXC void uart1_rx_isr(void) { static unsigned char len0; rev_buf[len]UDR1; //Uart_Transmit(rev_buf[len-1]); if((rev_buf[len-1]0x0d)(rev_buf[len-2]0x0a)) { len0; display_flag1; } }
#pragma interrupt_handler uart0_rx_isr:iv_USART0_RXC void uart0_rx_isr(void) { static unsigned char len0; rev_buf[len]UDR0; //Uart_Transmit(rev_buf[len-1]); if((rev_buf[len-2]0x0d)(rev_buf[len-1]0x0a)) { len0; led_moderev_buf[0]; display_flag1; } } 四、 proteus仿真设计 Proteus软件是一款应用比较广泛的工具它可以在没有硬件平台的基础上通过自身的软件仿真出硬件平台的运行情况这样就可以通过软件仿真来验证我们设计的方案有没有问题如果有问题可以重新选择器件连接器件直到达到我们设定的目的避免我们搭建实物的时候如果当初选择的方案有问题我们器件都已经焊接好了再去卸载下去再去焊接新的方案的器件测试这样会浪费人力和物力也给开发者带来一定困惑Proteus仿真软件就很好的解决这个问题我们在设计之初就使用该软件进行模拟仿真测试选择满足我们设计的最优方案。最后根据测试没问题的仿真图纸焊接实物调试最终完成本设计的作品。