前几天实现了简单的驱动数码管,今天试着完成了“使用电脑键盘控制数码管的显示”,主要是学习开发板的串口通信功能。
例程名称 :使用PC键盘控制一位数码管的显示 开发板型号 :STM32 Nucleo-F030R8 导入库文件 :mbed-src 终端串口软件 :SecureCRT 实现功能 :按下键盘数字键【0,1,2,3,4,5,6,7,8,9,小数点】, 使数码管显示对应数字。
1. 以下是main.cpp #include "mbed.h" //------------------------------------ // Hyperterminal configuration // 9600 bauds, 8-bit data, no parity //------------------------------------ Serial pc(SERIAL_TX, SERIAL_RX); DigitalOut myled(LED1); BusOut NixieTube(PC_5, PC_6, PC_7, PC_8, PC_9, PC_10, PC_11, PC_12); void echoUsart() { unsigned char cGot = pc.getc(); pc.printf("%c is received!\n\r", cGot); pc.printf("ASCII %d is received!\n\r", cGot); switch(cGot) { case '0': NixieTube = 0xC0; break; case '1': NixieTube = 0xF9; break; case '2': NixieTube = 0xA4; break; case '3': NixieTube = 0xB0; break; case '4': NixieTube = 0x99; break; case '5': NixieTube = 0x92; break; case '6': NixieTube = 0x82; break; case '7': NixieTube = 0xF8; break; case '8': NixieTube = 0x80; break; case '9': NixieTube = 0x90; break; case '.': NixieTube = 0x7F; break; } } int main() { pc.attach(&echoUsart, SerialBase::RxIrq); while(1) { wait(0.5); myled = !myled; } }
2. 开发板与数码管的连接 连接方式与我的上一个例程保持不变。 数码管段位 数码管管脚 开发板管脚 A 7 CN10-6 (PC5) B 6 CN10-4 (PC6) C 4 CN10-19(PC7) D 2 CN10-2 (PC8) E 1 CN10-1 (PC9) F 9 CN7-1 (PC10) G 10 CN7-2 (PC11) 。 5 CN7-3 (PC12) 3/8 CN5-8 (AVDD)
3. 终端串口软件截图(SecureCRT)
4. 最后是我亲爱的板子
5. PDF
欢迎大家交流。 |