BCD码减法实现程序,非常完整,采用VerilogHDL言语实现。
-BCDsubtractiontoachieveprogramcode,verycomplete,usingVerilogHDLlanguage.
2023/3/12 6:24:42 49KB BCD verilog 减法
1
1.C8051F320做的测试USB速度可到240KBps.包含单片机源码,驱动和上位机程序2.MCUc8051f040用自带的IIC控制器读写实时钟芯片PCF8563,完成BCD码到十进制码转换3.PCF8563的驱动程序,通过模拟IIC总线对PCF8563进行访问,有完整的读写报警,定时中断,最后把时间显示在LED上4.USBCDCusingC8051F320340,virtualCOMportthruusbconnection5.本库函数实现了C8051F020SMBUS总线的驱动简洁规范的代码风格以及简单易用的接口不堪为一经典之作6.采用AT89S51单片机,DS18B20数字温度采集器件,单总线驱动等电路设计制作一个点在温度计,能利用1602LCD液晶显示温度7.单片机为AT89S52,利用数字式输出的传感器DS18B20测温度,精度较高8.基于MST-G240128点阵液晶的状态机机制人机界面四级滚屏菜单源代码,带时间片机制模拟操作系统9.基于单片机的温度时钟(ds1302+ds1820+8951)全套原程序+硬件电路(PCB)10.实现LCD文字显示可以在界面上动态显示文字、图片,添加点flash之类的东西,可以与LED灯状态显示之类合在一起11.使用51系列单片机AT89S52控制LCD12864,全菜单化操作控制初始时间输入,并以指针+数字方式或纯数字方式显示当前时间及温度12.收藏有北航所有有关c8051基础实验的例程,包括adcdac比较器,定时,spi,iic,定时,串口,中断等13.数字温度传感器ds18b20+at8051的完整代码,注释详细,代码简洁,只需要改变1820接入51的io口线就能使用14.详细介绍了1602液晶显示器的各种控制方法,从最简单的显示一个字母A出发到显示自定义的图形
2015/10/22 1:21:38 6.08MB 单片机 源码 VC PCB
1
本程序设计实现的功能有:一、通过计时器8253实现秒、分、时的计数,即实现电子表计时功能。
二、通过8259产生7#中断实现时分显示形态和秒显示形态的切换功能。
三、通过8259产生6#中断实现对秒、分、时的修改设置功能。
(电子表采用24小时制) 对于功能一,电子表计时,则是通过将8253的计数器2置初值为4CE9H(十进制11625),并使其工作于方式2,采用二进制计数,然后,将out2接到IRQ1上,通过8259产生1#中断,从而完成对时间的计数。
由于OPCLK的频率为1.1625MHz.,故在程序中需在1#中断计数为100次后才对秒进行加1操作。
对于功能二,形态切换,则是通过在内存中设置一显示形态标志DISHM(默认为时分显示形态,初值为1),然后在有7#中断产生时,将DISHM的值与1求异或来完成形态标志的设置(1为时分显示形态,0为秒显示形态)。
对于功能三,时间修改,则在不同的显示形态下有不同的操作。
如果当前电子表处于时分显示形态,则得注意了!因为在程序中又加入了一个设置形态标志STH(默认为时的设置,初值为1)。
如果是在第一次对时分进行修改的话,只需通过向8255的C口置数,然后产生6#中断,便完成了对时的设置(C口置数均为BCD码)。
但是此后设置形态已经变为对分的设置了,如果此次并没有对分进行修改,那下一次切换到时分显示形态并要修改时间时便是从分开始设置的,如果对分进行了设置(产生了6#中断),程序又自动转入对时的设置形态。
而对秒的设置则简单多了,只需将显示形态切换到秒显示形态,然后对8255的C口置数,再产生6#中断便可对秒进行修改了。
程序会对C口输入的有效性进行检测。
2015/2/21 1:58:18 233KB 微机原理 接口 电子表
1
1.输入按键开关设计为7个,密码位数要14位。
14位数字密码分成高7位(DH6….DH0)和低7位(DL6….DL0)两次输入,用数字逻辑按键开关预置,2.开锁输出信号out为1表示开锁,否则不开锁。
3.输出报警信号均为1有效,分为声报警Soundthealarm(扬声器)和lightalarm(发光管),4.14位数字密码分时操作,先预置高7位,然后再置入低7位,(顶层电路可参考图1)。
5.要求电路工作可靠,保密性强,开锁出错立即报警,(用声光两种方式同时报警)。
6.利用QuartusⅡ软件,混合设计方法进行设计、编译、并在FPGA芯片上实现。
7.14位密码自己设定。
比如:“10010010011100”。
本次设计采用本人学号后三位分别用BCD码+两位班号,其中一班是01,二班是10,三班是11四班是00作为设计密码。
2019/11/18 17:13:42 380KB EDA课设报告 FPGA 14位密码锁 密码可变
1
将verilog16进制的数经过算法转化成bcd码,用于数码管显示。
2019/6/25 20:17:41 3KB verilog 16进制 bcd码
1
很实用的Verilog实例!目录:王金明:《VerilogHDL程序设计教程》程序例子,带说明。
【例3.1】4位全加器【例3.2】4位计数器【例3.3】4位全加器的仿真程序【例3.4】4位计数器的仿真程序【例3.5】“与-或-非”门电路【例5.1】用case语句描述的4选1数据选择器【例5.2】同步置数、同步清零的计数器【例5.4】用initial过程语句对测试变量A、B、C赋值【例5.5】用begin-end串行块产生信号波形【例5.6】用fork-join并行块产生信号波形【例5.7】持续赋值方式定义的2选1多路选择器【例5.8】阻塞赋值方式定义的2选1多路选择器【例5.9】非阻塞赋值【例5.10】阻塞赋值【例5.11】模为60的BCD码加法计数器【例5.12】BCD码—七段数码管显示译码器【例5.13】用casez描述的数据选择器【例5.15】用for语句描述的七人投票表决器【例5.16】用for语句实现2个8位数相乘【例5.17】用repeat实现8位二进制数的乘法【例5.18】同一循环的不同实现方式【例5.19】使用了`include语句的16位加法器【例5.20】条件编译举例【例6.1】加法计数器中的进程【例6.2】任务举例【例6.3】测试程序【例6.4】函数【例6.5】用函数和case语句描述的编码器(不含优先顺序)【例6.6】阶乘运算函数【例6.7】测试程序【例6.8】顺序执行模块1【例6.9】顺序执行模块2【例6.10】并行执行模块1【例6.11】并行执行模块2【例7.1】调用门元件实现的4选1MUX【例7.2】用case语句描述的4选1MUX【例7.3】行为描述方式实现的4位计数器【例7.4】数据流方式描述的4选1MUX【例7.5】用条件运算符描述的4选1MUX【例7.6】门级结构描述的2选1MUX【例7.7】行为描述的2选1MUX【例7.8】数据流描述的2选1MUX【例7.9】调用门元件实现的1位半加器【例7.10】数据流方式描述的1位半加器【例7.11】采用行为描述的1位半加器【例7.12】采用行为描述的1位半加器【例7.13】调用门元件实现的1位全加器【例7.14】数据流描述的1位全加器【例7.15】1位全加器【例7.16】行为描述的1位全加器【例7.17】混合描述的1位全加器【例7.18】结构描述的4位级连全加器【例7.19】数据流描述的4位全加器【例7.20】行为描述的4位全加器【例8.1】$time与$realtime的区别【例8.2】$random函数的使用【例8.3】1位全加器进位输出UDP元件【例8.4】包含x态输入的1位全加器进位输出UDP元件【例8.5】用简缩符“?”表述的1位全加器进位输出UDP元件【例8.6】3选1多路选择器UDP元件【例8.7】电平敏感的1位数据锁存器UDP元件【例8.8】上升沿触发的D触发器UDP元件【例8.9】带异步置1和异步清零的上升沿触发的D触发器UDP元件【例8.12】延迟定义块举例【例8.13】激励波形的描述【例8.15】用always过程块产生两个时钟信号【例8.17】存储器在仿真程序中的使用【例8.18】8位乘法器的仿真程序【例8.19】8位加法器的仿真程序【例8.20】2选1多路选择器的仿真【例8.21】8位计数器的仿真【例9.1】基本门电路的几种描述方法【例9.2】用bufif1关键字描述的三态门【例9.3】用assign语句描述的三态门【例9.4】三态双向驱动器【例9.5】三态双向驱动器【例9.6】3-8译码器【例9.7】8-3优先编码器【例9.8】用函数定义的8-3优先编码器【例9.9】七段数码管译码器【例9.10】奇偶校验位产生器【例9.11】用if-else语句描述的4选1MUX【例9.12】用case语句描述的4选1MUX【例9.13】用组合电路实现的ROM【例9.14】基本D触发器【例9.15】带异步清0、异步置1的
2020/10/10 20:05:56 127KB Verilog 实例 经典
1
使用VHDL语言编写,在ISE运转环境下实现了EDA上机考试的五个程序并进行了相应的仿真其中包括8为BCD码加法器多数表决器,计数器,移位寄存器,序列检测等
2016/4/5 15:54:46 1.59MB 计数器 序列检测 移位寄存器
1
(1)(第一道)编程实现将十进制数的ASCII码转换为BCD码要求:用E命令从键盘输入的五位十进制数的ASCII码已存放在0500H起始的内存单元中(25H、30H、32H、34H、65H),把它转换成BCD码后,再分别存入050AH起始的内存单元中。
若输入的不是十进制数的ASCII码,则对应的存放结果的单元内容为“FF”。
(2)(第四道)编程实现将存入0500H-0507H单元中的4个非紧缩BCD数(例:12,34,56,78),转换成二进制数码(用十六进制数表示),并存入起始地址为0510H-0517H的内存单元中。
1
51单片机中常用的多字节二进制码转压缩BCD码的示例代码(含清晰的正文),后3页使用代码编辑器重排版(对齐、美观)。
需要doc版本的可通过邮件zjyzfn@139.com联系。
2016/8/25 19:09:05 721KB 单片机 二进制 BCD 十六进制
1
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡