首先我们约定, PC机与FPGA 进行串行通信的波特率为9600,信息格式为8 个数据位, 1 个停止位, 1 个奇偶校验位。
控制下位系统进行工作的波特率为375k ,其信息格式为8 个数据位, 1 个停止位, l 个奇偶校验位。
对于接收Baud9600 (每位敷掘的位宽大约为104 μ s )的数据而言, 采用的晶振必须要大于2 × 9600= 19200Hz 才行,考虑到发送数据需要产生375k 的时钟,被选用能被整除的24MHz 晶振。
接收过程始于在TXD9600端检测到负跳变时。此时,利用24MHz 的晶振分频得来的1MHz不断采样, 采样速率为波特率的104倍。。一旦检测到负跳变, 104计数据立即复位开始记数,当记数到52时把此刻的采样值寄存起来, 记数满104时一位数据采样完毕, 清零104 计数器,重新开始记数,对下一位数值进行采样寄存。2100433B