2015-7-13 10:05| 发布者: kaloha| 查看: 5543| 评论: 0
串行输出扩展为并行输出芯片74LS164控制电路原理图
/*01010101010101010101010101010101010101010101010101010101010101010101----------------------------------------------------------------------实验内容:使用P2口的LED指示灯查看MCU自己从模拟串口发送的数据。----------------------------------------------------------------------硬件连接:将P2口和8位LED指示灯相连。 DVK501(164PrlPort) F320 EX Q0 --------- P2.0 Q1 --------- P2.1 Q2 --------- P2.2 Q3 --------- P2.3 Q4 --------- P2.4 Q5 --------- P2.5 Q6 --------- P2.6 Q7 --------- P2.7 VCC --------- VCC GND --------- GND MR --------- P1.5 A / B --------- P1.6 CLK --------- P1.7----------------------------------------------------------------------注意事项:(1)若有加载库程序,请将光盘根目录下的“library”下的“C8051F”文件夹拷到D盘(2)请详细阅读:光盘根目录下的“说明书首页.htm”里的相应产品说明----------------------------------------------------------------------10101010101010101010101010101010101010101010101010101010101010101010*/
#define _DVK501_F320_EX_
#include <c8051f320.h>#include <../../../../library/C8051F/ws_clock.h>#include <../../../../library/C8051F/ws_delay.h>#include <../../../../library/C8051F/ws_74hc164_port.h>void main(void){uchar tmp=0;PCA0MD &= ~0x40; XBR1 = 0x40;clock_external();hc164Init();
while(1){hc164SetDat(tmp);tmp++;delay_ms(500);}}
sbit HC164_DATA = P1^6;sbit HC164_CLK = P1^7;
void hc164Init(void){P1MDOUT |= 0xC0;}
void hc164SetDat(uchar dat){uchar i;for(i=0;i<8;i++){HC164_CLK = 0;if(dat & 0x80)HC164_DATA = 1;elseHC164_DATA = 0;HC164_CLK = 1;dat = dat<<1;}}
将74LS164的输出端口Q0--Q7接入LED,用LED指示74LS164输出的数据。
以上资料由微雪电子整理并发布,未经许可不得转载,否则追究相应责任!
评论
微雪官网|产品资料|手机版|小黑屋|微雪课堂. ( 粤ICP备05067009号 )
GMT+8, 2024-11-24 14:31 , Processed in 0.016950 second(s), 20 queries .