8088单板机时序测试(C语言版)
1.硬件2.测试程序#define ADR_273 0x0200 #define ADR_244 0x0400 #define LED_PORT 0x800 #define CS_IC4 0x400 void outp(unsigned int addr, char data) // 输出一字节到I/O端口 { __asm { mov dx, addr mov al, data out dx, al } } char inp(unsigned int addr) // 从I/O端口输入一字节 { char result; __asm { mov dx, addr in al, dx mov result, al } return result; } char end_flag[5]{0x55,0x55,0x55,0x55,0x55}; void delay(void) // 延时函数使用原有的双重循环延时方式 { int i; for(i0; i5000; i); for(i0; i5000; i); } void main(void) /* 闪烁灯程序8位LED时亮时灭 采用共阳LED输出0点亮输出1熄灭 */ { int i; unsigned char led_pattern; // 初始值1111 1110 (最低位D00点亮第1个LED) led_pattern 0x00; while (1) { // 输出当前模式到LED端口 outp(LED_PORT, led_pattern); // 延时控制流水速度 delay(); led_pattern ~led_pattern; outp(LED_PORT, led_pattern); delay(); for(i0;i64;i) { outp(CS_IC4, i); } } // 退出时关闭所有LED输出全1 // outp(LED_PORT, 0xFF); }3.测试结果
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2588852.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!