FPGA设计时分秒进位数字时钟verilog实验Quartus9.1工程源码+设计说明文件 /* 本实验实现一个能显示小时,分钟,秒的数字时钟。 */ module clock(clk,rst,dataout,en); input clk,rst; output[7:0] dataout; reg[7:0] dataout; output[7:0] en; reg[7:0] en; reg[3:0] dataout_buf[7:0]; reg[25:0] cnt; reg[15:0] cnt_scan; reg[3:0] dataout_code; wire[5:0] cal; //各级进位标志 assign cal[0]=(dataout_buf[0]==9)?1:0; assign cal[1]=(cal[0]&&dataout_buf[1]==5)?1:0; assign cal[2]=(cal[1]&&dataout_buf[3]==9)?1:0; assign cal[3]=(cal[2]&&dataout_buf[4]==5)?1:0; assign cal[4]=(cal[3]&&dataout_buf[6]==9)?1:0; assign cal[5]=(cal[3]&&dataout_buf[6]==2&&dataout_buf[7]==1)?1:0; always@(posedge clk or negedge rst) begin if(!rst) begin cnt_scan<=0; en<=8'b1111_1110; end else begin cnt_scan<=cnt_scan+1; if(cnt_scan==16'hffff) begin en[7:1]<=en[6:0]; en[0]<=en[7]; end end end always@(*) begin case(en) 8'b1111_1110: dataout_code=dataout_buf[0]; 8'b1111_1101: dataout_code=dataout_buf[1]; 8'b1111_1011: dataout_code=dataout_buf[2]; 8'b1111_0111: dataout_code=dataout_buf[3]; 8'b1110_1111: dataout_code=dataout_buf[4]; 8'b1101_1111: dataout_code=dataout_buf[5]; 8'b1011_1111: dataout_code=dataout_buf[6]; 8'b0111_1111: dataout_code=dataout_buf[7]; default: dataout_code=dataout_buf[0]; endcase end always@(posedge clk or negedge rst) begin if(!rst) cnt<=0; else if(cnt!=40000000) cnt<=cnt+1; else cnt<=0; end always@(posedge clk or negedge rst) //实现计数和进位的功能 begin if(!rst) begin dataout_buf[0]<=0; dataout_buf[1]<=0; dataout_buf[2]<=15; dataout_buf[3]<=0; dataout_buf[4]<=0; dataout_buf[5]<=15; dataout_buf[6]<=2; dataout_buf[7]<=1; end else begin if(cnt==26'd40000000) begin if(!cal[0]) dataout_buf[0]<=dataout_buf[0]+1; else begin dataout_buf[0]
基于FIFO的串口发送器+串口自收发通信verilog设计实验Quartus9.1工程源码+设计说明文件,可以做为你的学习设计实验参考。 module uartfifo( clk,rst_n, rs232_tx ); input clk; // 25MHz主时钟 input rst_n; //低电平复位信号 output rs232_tx; //RS232发送数据信号 wire[7:0] wrf_din; //数据写入缓存FIFO输入数据总线 wire wrf_wrreq; //数据写入缓存FIFO数据输入请求,高有效 wire[7:0] tx_data; //串口待发送数据 wire tx_start; //串口发送数据启动标志位,高有效 wire fifo232_rdreq; //FIFO读请求信号,高有效 wire fifo_empty; //FIFO空标志位,高有效 assign tx_start = ~fifo_empty; //fifo有数据即启动串口模块发送数据 //例化232发送数据产生模块 datagene uut_datagene( .clk(clk), .rst_n(rst_n), .wrf_din(wrf_din), .wrf_wrreq(wrf_wrreq) ); //例化FIFO fifo232 fifo232_inst ( .clock(clk), .data(wrf_din), .rdreq(fifo232_rdreq), .wrreq(wrf_wrreq), .empty(fifo_empty), .q(tx_data) ); //例化串口发送模块 uart_ctrl uut_uartfifo( .clk(clk), .rst_n(rst_n), .tx_data(tx_data), .tx_start(tx_start), .fifo232_rdreq(fifo232_rdreq), .rs232_tx(rs232_tx) ); endmodule
ATK-HC05蓝牙串口模块结构尺寸: ATK-HC05蓝牙串口模块主要特点: 1,主从一体(通过AT指令设置)。 2,体积小巧(16*32mm)。 2,支持波特率范围宽(4800~1382400)。 3,兼容3.3V/5V单片机系统。 4,带状态指示灯。 5,所有功能通过AT指令设置,使用方便。 6, 蓝牙版本:蓝牙2.0 资料介绍: 模块原理图pdf版本 和模块封装库 程序源码:正点原子STM32开发板驱动源码,库函数和寄存器两个版本,请选择对应开发板源码。 配套软件:测试开发过程中常用软件,包括调试助手等 HC05蓝牙模块指令集:文件夹下面包含HC05蓝牙指令集.pdf文件,里面是蓝牙模块的指令集。 ATK-HC05-V11用户手册_V1.03.pdf:这是蓝牙模块用户手册,介绍蓝牙模块参数和功能等 ATK-HC05蓝牙串口模块使用说明.pdf:开发板配套模块使用说明,请选择对应开发板对应的文件。 ATK-HC05蓝牙模块常见问题汇总.pdf:调试开发过程中常见问题解答。
2021-11-30 09:54:54 9.41MB 蓝牙模块 atk-hc05 串口模块 蓝牙串口
1
本网站使用的是.net Webform框架开发,主要功能是记录一些笔记使用,比如设备的维修笔记等等。数据库使用的是 sqlserver 2008 . 花费了很多业余时间做的。写的代码也比较乱,技术有限,代码比较直观,或者说就是简单粗暴。 不过既然做出了大部分的功能,还是分享出来。或许谁有兴趣,可以看看参考改进。也算没有白做,有点价值。谢谢 如有问题可以留言。同时希望.net 越来越好。软件开发也需要人性化,简单的技术应该得到尊重和应有的价值。
2021-11-25 09:06:38 13.39MB webform .net C# sqlserver
1
概述: 随着自行车运动的普及和发展,自行车越来越受到大众的欢迎。自行车码表作为一款测速装置,能合理的计算出速度和公里数,真实地反映骑行状况,使骑行者能够评估自己的运动量,以达到健康运动的最佳效果。本应用说明提供了一种基于瑞萨低功耗、内置LCD 驱动器的单片机R7F0C002 的自行车码表解决方案。 技术参数:  电源: 3.0 V (锂电池 CR2032 ╳ 1 个)  低功耗电流(MCU): 0.23uA (TYP.) STOP 模式  LCD 工作电压: 3.0 V  LCD 驱动电压生成方式: 内部升压方式,基准电压为1.00 V  LCD 驱动方式: 1/4 占空比,1/3 偏压 规格:  低功耗功能: 300 秒内没有运动讯号输入,系统工作在低功耗(STOP)模式。  时间显示功能: LCD 面板上实时显示当前的小时、分钟等时间信息。  总行车时长显示功能: LCD 面板上实时显示总行车时长。  当前行车速度显示功能: LCD 面板上实时显示当前行车速度(公里/小时)。  当次行车里程显示功能: LCD 面板上实时显示当次行车里程(公里)。  总行车里程显示功能: LCD 面板上实时显示总行车里程(公里)。  时间设定功能: 任意时刻,可以通过按键设定当前的时间信息。  车轮周长设定功能: 任意时刻,可以通过按键设定车轮的周长(毫米)。  工作温度: -10℃ ~ 40℃  工作湿度: 30% RH ~ 95% RH 自行车里程表程序源码软件框图:
1
功能设定: 针对i.MX6UL,编写Freescale Yocto Linux 系统下的 dual –mode WIFI/BT芯片driver(推荐使用Realtek RTL8723BS,也可以选择其它的dual-mode 芯片); 采用SDIO接口与i.MX6UL连接.; 设备: i.MX6UL 开发板 Marvell 88W8787模块 准备工作: 接上电源线和串口线,串口在linux下被识别为/dev/ttyUSBx,可通过串口软件(例如minicom)打开串口,串口设置为波特率为115200,8位,无校验,1位停止位,无硬件控制流。 将模块插入到SD卡座后上电,等待系统正常启动。 等待进入登录界面时,输入root登录 系统将自动加载Marvell 88W8787的驱动模块 WIFI功能配置与使用: 通过iwconfig命令可以看到识别到的设备mlan0,此时还未关联到无线路由。 参照/etc/wpa_supplicant.conf,添加一个无线路由的配置,例如我的无线路由采用WPA-PSK认证,可添加如下配置 # Only WPA-PSK is used. Any validcipher combination is accepted. network={ ssid="你的网络名称,此处需要修改" proto=WPA key_mgmt=WPA-PSK pairwise=CCMP TKIP group=CCMP TKIP WEP104WEP40 psk="你的WIFI密码,此处需要对应修改" priority=2 } 执行 wpa_supplicant -i mlan0-c /etc/wpa_supplicant.conf & 等待关联成功,连接成功之后,通过udhcpc命令获取地址,并测试一下ping外网是否可通。 蓝牙功能配置与操作: 通过命令hciconfighci0 up,使能之后就可以使用蓝牙设备。 启动蓝牙设备服务进程 /usr/lib/bluez5/bluetooth/bluetoothd & 通过hcitool扫描附近的设备,此时要把手机蓝牙打开 记住扫描的设备的设备地址,可以通过l2ping做一个测试 通过rfcomm,创建一个连接到手机蓝牙的通道 mknod/dev/rfcomm0 c 216 0 chmod 666/dev/rfcomm0 6、连接到扫描到的手机 rfcomm connect/dev/rfcomm0 xx:xx:xx:xx:xx:xx [channel] channel可选,可以通过sdptool browse xx:xx:xx:xx:xx:xx来查询手机蓝牙支持的服务及它的channel 可以找到服务名为 “Headset Audio Gateway”并看到它的通道为1,然后连接手机的该功能 rfcomm connect/dev/rfcomm0 xx:xx:xx:xx:xx:xx 1 & 在手机端确认下配对,即可显示连上电话音频。 7、minicom打开该通道,通过AT指令来控制手机接打电话等功能 minicom -D/dev/rfcomm0 然后输入拨打电话的AT指令 ATD10086 即可拨打电话10086 视频演示:
2021-11-23 14:14:11 1.05MB wifi驱动源码 wifi驱动 电路方案
1
OpenDDS3.9源码及说明文档(英文);
2021-11-15 20:58:54 20.35MB 数据分发
1
本文档介绍的是一款带有LCD显示的便携式TDS 水质检测笔,基于瑞萨 RL78/G11 单片机设计。用来测定家庭引用水中的所有固体物质,包括矿物质、盐分以及溶解在水中的微小金属物质。通过便携式TDS 水质检测笔来测试水的TDS值或水的电导率,以判断水的纯净或污染程度。同时兼有测试水温和环境温度的功能。便携式TDS 水质检测笔主要应用于水处理行业、饮用水业、家庭、个人居家旅游、野外作业等作为水质的检验判别工具。 TDS 水质检测笔电路板设计正面截图: TDS 水质检测笔电路板设计背面截图: 带LCD显示的便携式TDS 水质检测笔电路功能如下: 1.测量范围: 0 ~ 9999 ppm, 适用于多个领域。 2.LCD液晶显示:显示3位数字和对应的物理量单位。 3.锁定读数:为了便于读取和记录,显示数值可被锁定。 4.温度显示:可切换显示摄氏温度ºC和华氏温度ºF。 5.自动关机:5分钟内无任何操作,设备自动关机。 TDS 水质测试笔电路硬件设计框图: 附件资料截图:
2021-11-11 10:39:59 2.36MB 瑞萨 电路方案
1
uip1.0 0.9源码以及中文说明,对于学习嵌入式TCPIP协议有很大的学习价值
2021-11-10 12:07:54 6.47MB uip1.0 0.9 源码 中文说明
1
Arduino LilyPad USB开发板简介: Arduino LilyPad是Arduino 一个特殊版本,是为可穿戴设备和电子纺织品而开发的。Arduino LilyPad的处理器核心是ATmega168或者ATmega328,同时具有14路数字输入/输出口(其中6路可作为PWM输出,一路可以用来做蓝牙模块的复位信号),6路模拟输入,一个16MHz晶体振荡器,电源输入固定螺丝,一个ICSP header和一个复位按钮。 实物展示: Arduino LilyPad参数如下: 处理器 ATmega168 or ATmega328 工作电压 2.7V-5.5V 输入电压 2.7V-5.5V 数字IO脚 14 (其中6路作为PWM输出) 模拟输入脚 6 IO脚直流电流 40 mA 3.3V脚直流电流 50 mA Flash Memory 16 KB (ATmega168,其中2 KB 用于 bootloader) SRAM 1 KB EEPROM 0.5 KB 工作时钟 8 MHz 电源: Arduino LilyPad可以通过USB连接或者外部电源供电,电压可从2.7V到5.5V,需要注意Arduino LilyPad没有保护电路,输入电压不能正负接反也不能超过阀值。 存储器: ATmega168包括了片上16KB Flash,其中2KB用于Bootloader。同时还有1KB SRAM和0.5KB EEPROM。 通信接口: 串口:ATmega328内置的UART可以通过数字口0(RX)和1(TX)与外部实现串口通信。 TWI(兼容I2C)接口: SPI 接口: 蓝牙模块Bluegiga WT11为Arduino BT提供了蓝牙通信能力。WT11 与ATmega328之间通过串口信号连接,其通信波特率为 115200。该模块与计算机的蓝牙设备通讯连接上后将会提供一个虚拟串口。WT11 的设备名字设置为ARDUINOBT,密码为12345,参见[[]] 注意要点: Arduino LilyPad可以水洗,当然要先断开电源。 Arduino LilyPad没有电源保护电路,因此接入电源必须小心。 Arduino LilyPad的使用相对来说要复杂一些,具体参见https://arduino.cc/en/Guide/ArduinoLilyPad 视频演示: https://v.youku.com/v_show/id_XMTI5MDUwOTk3Mg==.htm... https://v.youku.com/v_show/id_XMzkyODQ4NjA0.html?tp... 附件内容截图: 实物购买链接:https://www.sparkfun.com/
2021-10-28 17:18:07 867KB 电路方案
1