计程模块仿真结果
发布时间:2018/3/3 20:00:40 访问次数:296
注:语句1icheng(=conv st廴logiqvCctor(⒛,7) WHEN"001"表示:当DIP_B开关置于“001Ⅱ时,起步里程licheng被赋于同D⒛等值的B“0010100”,这里用了数据类型自动转换函数,其格式为:SN65176BP
这是sTD LOGIC ARITH程序包中定义的数据类型转换函数,表示将括号中所写的第1个默认十进制值D①可以是INTEGERl整型数)、UNsIGNED(无符号数)或sIGNED(有符号数》自动转换为等值的位长为L的标准逻辑位矢量哎d logiqve∝or(这里就是转换为位长为L的二进制数)。注意:lichcllg(=conLstd logicJector(20,7)等价于lichcng<="0010100"。运用数据类型转换函数可节省由D⒛到B0010100的人工计算步骤,且在某些需要数据类型转换时会带来书写VHDL程序的方便。
计程模块仿真结果如图5.412所示。
图5⒋12 计程模块仿真结果Θip=000)
分析图5,4,12可知:①dip开关设为“000”,起步里程设为1km;②计满10个百米脉冲dkin之前,里程(1ength)信号输出为10(显示时要加小数点,显示为10km起步里程);③这之后对100m脉冲信号显示实际里程值;④起步里程超出之后,c1kout对clkin进行了5分频,每5个100m脉
冲输出一个clkout,即500m脉冲;500m脉冲计数值可以简单地对应按里程单价的累计车费,而单价可定为1元/500m,或2元/1km。
注:语句1icheng(=conv st廴logiqvCctor(⒛,7) WHEN"001"表示:当DIP_B开关置于“001Ⅱ时,起步里程licheng被赋于同D⒛等值的B“0010100”,这里用了数据类型自动转换函数,其格式为:SN65176BP
这是sTD LOGIC ARITH程序包中定义的数据类型转换函数,表示将括号中所写的第1个默认十进制值D①可以是INTEGERl整型数)、UNsIGNED(无符号数)或sIGNED(有符号数》自动转换为等值的位长为L的标准逻辑位矢量哎d logiqve∝or(这里就是转换为位长为L的二进制数)。注意:lichcllg(=conLstd logicJector(20,7)等价于lichcng<="0010100"。运用数据类型转换函数可节省由D⒛到B0010100的人工计算步骤,且在某些需要数据类型转换时会带来书写VHDL程序的方便。
计程模块仿真结果如图5.412所示。
图5⒋12 计程模块仿真结果Θip=000)
分析图5,4,12可知:①dip开关设为“000”,起步里程设为1km;②计满10个百米脉冲dkin之前,里程(1ength)信号输出为10(显示时要加小数点,显示为10km起步里程);③这之后对100m脉冲信号显示实际里程值;④起步里程超出之后,c1kout对clkin进行了5分频,每5个100m脉
冲输出一个clkout,即500m脉冲;500m脉冲计数值可以简单地对应按里程单价的累计车费,而单价可定为1元/500m,或2元/1km。
热门点击