传送带产品计数器的设计(LCD)

传送带产品计数器的设计(LCD)
传送带产品计数器的设计(LCD)

目录

1题目 (1)

2 电路原理图的设计 (1)

2.1 传送带产品计数器设计的电路原理图 (1)

2.2 LCD显示模块 (3)

2.3 计数模块 (3)

2.4 键盘模块 (3)

3 软件系统设计 (3)

3.1 软件系统的流程结构 (3)

3.2 LCD显示程序模块................................. 错误!未定义书签。

3.3 计数程序模块.................................... 错误!未定义书签。

4 仿真及调试 (7)

5 总论 (8)

参考文献 (8)

致谢 (9)

1题目

2 电路原理图的设计

2.1 传送带产品计数器设计的电路原理图

图2.1 电路原理图2.2 LCD显示模块[11]

2.4 键盘模块

3软件系统设计

3.1 软件系统的流程结构

3.2 LCD显示程序模块

/*----------------------------------------------------------- 文件名:lcd1602.h头文件

功能:LCD1602驱动函数的声明

-----------------------------------------------------------*/ #ifndef _LCD1602_H_

#define _LCD1602_H_

#include

#define uint unsigned int

#define uchar unsigned char

//接口定义

sbit LcdRs = P2^0;

sbit LcdRw = P2^1;

sbit LcdEn = P2^2;

sfr DBPort = 0x80; //P0口为LCD数据总线/*----------------------------------------------------------- 功能:LCD初始化函数

-----------------------------------------------------------*/ void LCD_Initial();

/*-----------------------------------------------------------

功能:LCD显示字符(ASIIC码)函数

参数:x-列0~15;y-行0~1;str-要显示的字符串指针

-----------------------------------------------------------*/

void LCD_Prints(uchar x, uchar y,uchar *str);#endif

/*-----------------------------------------------------------

文件名:lcd1602.c

函数功能:LCD1602的驱动函数

原理:采用普通IO口方式模拟LCD1602时序,未采用总线方式

-----------------------------------------------------------*/

#include

#include //次头文件中定义有_nop_()函数

#include "lcd1602.h"

/*-----------------------------------------------------------

功能:内部等待函数

返回参数:P0数据

-----------------------------------------------------------*/

uchar LCD_Wait(void)

{LcdRs=0;

LcdRw=1; _nop_();

LcdEn=1; _nop_();

//while(DBPort&0x80);

/* 在用Proteus仿真时,屏蔽此语句,否则会进入死循环,

实际硬件操作时打开此语句.*/

LcdEn=0;

return DBPort;}

/*-----------------------------------------------------------

功能:写LCD命令/数据函数

参数:style为写命令/数据,0-命令,1-数据;input为写入的8位命令/数据-----------------------------------------------------------*/

#define LCD_COMMAND 0 // 命令

#define LCD_DATA 1 // 数据

#define LCD_CLEAR_SCREEN 0x01 // 清屏

#define LCD_HOMING 0x02 // 光标返回原点

void LCD_Write(bit style, uchar input)

{LcdEn=0;

LcdRs=style;

LcdRw=0; _nop_();

DBPort=input; _nop_();

LcdEn=1; _nop_();

LcdEn=0; _nop_();

LCD_Wait();}

/*-----------------------------------------------------------

功能:设置LCD显示模式

参数:DisplayMode 见下面的定义

-----------------------------------------------------------*/

//显示模式定义

#define LCD_SHOW 0x04 //显示开

#define LCD_HIDE 0x00 //显示关

#define LCD_CURSOR 0x02 //显示光标

#define LCD_NO_CURSOR 0x00 //无光标

#define LCD_FLASH 0x01 //光标闪动

#define LCD_NO_FLASH 0x00 //光标不闪动

void LCD_SetDisplay(uchar DisplayMode)

{LCD_Write(LCD_COMMAND, 0x08|DisplayMode); }

/*-----------------------------------------------------------

功能:设置LCD输入模式

参数:InputMode 见下面的定义

-----------------------------------------------------------*/

#define LCD_AC_UP 0x02 // 地址计数器增加方式

#define LCD_AC_DOWN 0x00 // 此为缺省设置

#define LCD_MOVE 0x01 // 画面可平移

#define LCD_NO_MOVE 0x00 // 画面不可平移

void LCD_SetInput(uchar InputMode)

{LCD_Write(LCD_COMMAND, 0x04|InputMode);}

//初始化LCD 详见LCD1602.h中的说明

void LCD_Initial()

{LcdEn=0;

LCD_Write(LCD_COMMAND,0x38); //8位数据端口,2行显示,5*7点阵LCD_Write(LCD_COMMAND,0x38); //此句不能省

LCD_SetDisplay(LCD_SHOW|LCD_NO_CURSOR); //开启显示, 无光标

LCD_Write(LCD_COMMAND,LCD_CLEAR_SCREEN); //清屏

LCD_SetInput(LCD_AC_UP|LCD_NO_MOVE); //AC递增, 画面不?}

/*-----------------------------------------------------------

功能:液晶字符显示的位置函数

参数:x-列0~15;y-行0~1;

-----------------------------------------------------------*/

void LCD_Pos(uchar x, uchar y)

{if(y==0)

LCD_Write(LCD_COMMAND,0x80|x);

if(y==1)

LCD_Write(LCD_COMMAND,0x80|(x-0x40));}

//将字符(ASIIC码)输出到液晶显示详见LCD1602.h中的说明

void LCD_Prints(uchar x, uchar y,uchar *str)

{LCD_Pos(x,y);

while(*str!='\0'){ LCD_Write(LCD_DATA,*str); str++;}}

3.3计数程序模块

#include"lcd1602.h"

#define uchar unsigned char

#define uint unsigned int

uchar out[6];

sbit STAR_KEY =P3^2;//定义键与单片机的连接引脚

sbit L0=P1^0; //定义SFR中引脚的位

sbit L1=P1^1;

sbit L2=P1^2;

sbit L3=P1^3;

sbit L4=P1^4;

sbit L5=P1^5;

sbit L6=P1^6;

sbit L7=P1^7;

sbit MOTOR=P3^0;

uchar n[2]={1,0};

void delayms(uint x) //延时子程序

{uchar y;

while(x--){for(y=0;y<123;y++){;}}

uchar Keynum() //按键子程序1

{uchar key=0;

STAR_KEY=1; //置初值

if(STAR_KEY==0){delayms(10);if(STAR_KEY==0)n[0]=0;n[1]=1;} //按下STAR键则n[0]=0;n[1]=1return n[1]; //返回n值}

void xianshi(uint dispbuf) //显示子程序

{out[0]=dispbuf/10000+0x30;

out[1]=((dispbuf%10000)/1000)+0x30;

out[2]=((dispbuf%1000)/100)+0x30;

out[3]=((dispbuf%100)/10)+0x30;

out[4]=dispbuf%10+0x30;

out[5]='\0';

LCD_Initial(); //LCD初始化

LCD_Prints(1, 0,"The Speed Is"); //LCD输出

LCD_Prints(10, 1,"n/min");

LCD_Prints(4, 1,out); }

uint qiuzhi() //求用拨码盘所置数的值的子程序

{ uchar a;

uchar b;

uchar c;

uchar d;

uchar e;

uchar f;

uchar g;

uchar h;

uint p=0;

if (L0==1) {a=1;} else {a=0;} //将电平信号变为数字的值

if (L1==1) {b=1;} else {b=0;}

if (L2==1) {c=1;} else {c=0;}

if (L3==1) {d=1;} else {d=0;}

if (L4==1) {e=1;} else {e=0;}

if (L5==1) {f=1;} else {f=0;}

if (L6==1) {g=1;} else {g=0;}

if (L7==1) {h=1;} else {h=0;}

p=a+b*2+c*2*2+d*2*2*2+e*2*2*2*2+f*2*2*2*2*2+g*2*2*2*2*2*2+h*2*2*2*2*2*2*2; return p; // 返回所求的P 值}

void main(void) //主程序

{uint q;

IT0=1; //负跳变触发

EA=1; //开总允许中断

EX0=1; //开INTO 中断

TMOD=0X05; //置T0为计数器 方式1

TL0=0; //置计数器初值

TH0=0;

while(1) //无限循环

{ q=qiuzhi(); //调用求值子程序求出所置的数

if (MOTOR==1) {xianshi(q);} else {xianshi(TL0);Keynum();TR0=n[1];} //当电动机关闭时显示用薄码盘所置的数并停止计数,电机启动时则开始计数,并显示计数值 if (TL0==q) {TR0=0;MOTOR=1;} else {Keynum();MOTOR=n[0];} }}

//当计数值与所置数相同时关闭电机,停止计数,当计数值不等时则将电机启动与关闭交由按键控制,所以不存在计数值超过置数值的情况 void Int0(void) interrupt 0 //中断服务程序,工作寄存器用0组

{ TL0=0;TR0=1; }//重置计数值,重新开始计数

4 仿真及调试

XTAL218XTAL119ALE 30EA 31PSEN 29RST 9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.6

7P1.7

8P3.0/RXD

10P3.1/TXD

11P3.2/INT0

12P3.3/INT1

13P3.4/T0

14P3.7/RD 17P3.6/WR

16P3.5/T1

15P2.7/A15

28P2.0/A821P2.1/A922P2.2/A10

23P2.3/A11

24P2.4/A12

25P2.5/A13

26P2.6/A14

27U1OFF ON 12345678161514131211109DSW1234567891

RP110*865412U2R1100R2R310k RL112V Q5NPN D11N4001VCC +12V +12v VCC VCC 急停电机计数值设定D 714D 613D 512D 411D 310D 29D 18D 07E 6R W 5R S 4V S S 1V D D 2V E E 3LCD1LM016L RV11k VCC

5 总论

参 考 文 献

234567891RP110*8VCC D 714D 613D 512D 411D 310D 29D 18D 07E 6R W 5R S 4V S S 1V D D 2V E E 3LCD1LM016L RV11k VCC

致谢

实验四 计数器电路设计

实验四、计数器电路的设计 一、实验目的 1、掌握计数器电路的设计方法; 2、进一步掌握电路的设计、编译、仿真和下载测试的方法。 二、实验要求 1、基本要求 1)设计一个具有异步复位和同步使能的4位二进制加法计数器 2)设计一个具有异步复位和同步使能、并行置数的加减可控的8位二进制计数器 3)设计一个具有异步复位和同步使能的BCD码加法计数电路, 2、扩展要求 1)设计一个具有异步复位和同步使能的六十进制加法计数电路 2)设计一个具有异步复位和同步使能的二十四进制加法计数电路 三、实验原理 四、实验内容及步骤 1、建立一个工程项目,路径如:D:\A0512301\forth,项目名和顶层实体名为count。 2、设计一个具有异步复位和同步使能的4位二进制计数器,并进行编译仿真与下载测试; 3、设计一个具有异步复位和同步使能、并行置数的加减可控的8位二进制计数器,并进行编译仿真与下载测试; 4、设计一个具有异步复位和同步使能的十进制加法计数电路,并进行编译仿真与下载测 试; 五、参考程序 1、四位加法计数器 LIBRARY IEEE ; USE IEEE.STD_LOGIC_1164.ALL ; USE IEEE.STD_LOGIC_UNSIGNED.ALL ; ENTITY CNT4 IS PORT ( CLK : IN STD_LOGIC ; Q : OUT STD_LOGIC_VECTOR(3 DOWNTO 0) ) ; END ; ARCHITECTURE bhv OF CNT4 IS SIGNAL Q1 : STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN PROCESS (CLK) BEGIN IF CLK'EVENT AND CLK = '1' THEN Q1 <= Q1 + 1 ; END IF; END PROCESS ; Q <= Q1 ; END bhv; 2、异步复位,同步使能十进制加法计数器 LIBRARY IEEE;

EDA实验报告-实验3计数器电路设计(DOC)

暨南大学本科实验报告专用纸 课程名称EDA实验成绩评定 实验项目名称计数器电路设计指导教师郭江陵 实验项目编号03 实验项目类型验证实验地点B305 学院电气信息学院系专业物联网工程 组号:A6 一、实验前准备 本实验例子使用独立扩展下载板EP1K10_30_50_100QC208(芯片为EP1K100QC208)。EDAPRO/240H实验仪主板的VCCINT跳线器右跳设定为3.3V;EDAPRO/240H实验仪主板的VCCIO跳线器组中“VCCIO3.3V”应短接,其余VCCIO均断开;独立扩展下载板“EP1K10_30_50_100QC208”的VCCINT跳线器组设定为 2.5V;独立扩展下载板“EP1K10_30_50_100QC208”的VCCIO跳线器组设定为3.3V。请参考前面第二章中关于“电源模块”的说明。 二、实验目的 1、了解各种进制计数器设计方法 2、了解同步计数器、异步计数器的设计方法 3、通过任意编码计数器体会语言编程设计电路的便利 三、实验原理 时序电路应用中计数器的使用十分普遍,如分频电路、状态机都能看到它的踪迹。计数器有加法计数器、可逆计数器、减法计数器、同步计数器等。利用MAXPLUSII已建的库74161、74390分别实现8位二进制同步计数器和8位二——十进制异步计数器。输出显示模块用VHDL实现。 四、实验内容 1、用74161构成8位二进制同步计数器(程序为T3-1); 2、用74390构成8位二——十进制异步计数器(程序为T3-2); 3、用VHDL语言及原理图输入方式实现如下编码7进制计数器(程序为T3-3): 0,2,5,3,4,6,1 五、实验要求 学习使用Altera内建库所封装的器件与自设计功能相结合的方式设计电路,学习计数器电路的设计。 六、设计框图 首先要熟悉传统数字电路中同步、异步计数器的工作与设计。在MAX+PLUS II中使用内建的74XX库选择逻辑器件构成计数器电路,并且结合使用VHDL语言设计转换模块与接口模块,最后将74XX模块与自设计模块结合起来形成完整的计数器电路。并借用前面设计的数码管显示模块显示计数结果。 ◆74161构成8位二进制同步计数器(程序为T3-1)

计数器的设计实验报告

计数器的设计实验报告 篇一:计数器实验报告 实验4 计数器及其应用 一、实验目的 1、学习用集成触发器构成计数器的方法 2、掌握中规模集成计数器的使用及功能测试方法二、实验原理 计数器是一个用以实现计数功能的时序部件,它不仅可用来计脉冲数,还常用作数字系统的定时、分频和执行数字运算以及其它特定的逻辑功能。 计数器种类很多。按构成计数器中的各触发器是否使用一个时钟脉冲源来分,有同步计数器和异步计数器。根据计数制的不同,分为二进制计数器,十进制计数器和任意进制计数器。根据计数的增减趋势,又分为加法、减法和可逆计数器。还有可预置数和可编程序功能计数器等等。目前,无论是TTL还是

CMOS集成电路,都有品种较齐全的中规模集成计数器。使用者只要借助于器件手册提供的功能表和工作波形图以及引出端的排列,就能正确地运用这些器件。 1、中规模十进制计数器 CC40192是同步十进制可逆计数器,具有双时钟输入,并具有清除和置数等功能,其引脚排列及逻辑符号如图5-9-1所示。 图5- 9-1 CC40192引脚排列及逻辑符号 图中LD—置数端CPU—加计数端CPD —减计数端CO—非同步进位输出端BO—非同步借位输出端 D0、D1、D2、D3 —计数器输入端 Q0、Q1、Q2、Q3 —数据输出端CR—清除端 CC40192的功能如表5-9-1,说明如下:表5-9-1 当清除端CR为高电平“1”时,计数

器直接清零;CR置低电平则执行其它功能。当CR为低电平,置数端LD也为低电平时,数据直接从置数端D0、D1、D2、D3 置入计数器。 当CR为低电平,LD为高电平时,执行计数功能。执行加计数时,减计数端CPD 接高电平,计数脉冲由CPU 输入;在计数脉冲上升沿进行8421 码十进制加法计数。执行减计数时,加计数端CPU接高电平,计数脉冲由减计数端CPD 输入,表5-9-2为8421 码十进制加、减计数器的状态转换表。加法计数表5-9- 减计数 2、计数器的级联使用 一个十进制计数器只能表示0~9十个数,为了扩大计数器范围,常用多个十进制计数器级联使用。 同步计数器往往设有进位(或借位)输出端,故可选用其进位(或借位)输出信号驱动下一级计数器。 图5-9-2是由CC40192利用进位

单片机课程设计题目汇总(全)

单片机原理与接口技术课程设计题目汇总 说明:为便于同学提前探讨开发思路,特将本课程设计的可选题目发给大家。 每个同学可以在以下题目中选一题要求:课程设计考核内容包括:源程序;设计报告文档基于单片机的电子时钟设计设计内容:1、用LCD液晶作为显示设备(30分) 2、可以分别设定小时,分钟和秒,复位后时间为:00: 00:00 (30 分) 3、能实现日期的设置,年、月、日(30分) 4、其他创新内容(10分)如:闹钟功能;显示星期;整点音乐报时等。 图示: 2010-04-09 MON 11:06:42 基于单片机的交通灯显示系统(一) 设计内容:1、东西方向、南北方向均有红、黄、绿三种信号灯;(30 分) 2、带紧急制动按钮,按钮按下,所有方向亮红灯;再次按下,恢复正常显 示(20分) 3、夜间模式按钮按下,所有方向显示黄灯闪烁(20分) 4、实时提醒绿灯亮的剩余时间(30分)图示: 基于单片机的交通灯显示系统(二) 设计内容:1、东西干道和南北干道的通行分左行、右行、直行,其中左行、右行固定15秒;直行固定30秒(40分) 2、信号灯分绿灯(3种)、红灯、黄灯,每次绿灯换红灯时,黄灯亮3秒 钟。(30分) 3、东西干道和南北干道交替控制,每次干道绿灯交替时,有 3 秒钟所有干道的交通灯都是黄灯闪烁3秒钟,提示已经进入路口的车辆迅速通过。(30分)

4、其他创新内容。(10分) 图示: 四、基于单片机的波形发生器设计 设计内容:1、设计一款能产生3种以上波形的波形发生器(30分) 2、设计波形选择按钮(采用3个独立按键)(10分) 3、点阵显示波形图案(20分) 4、能同时输出两种波形(30分) 5、显示频率(10分) 图示: 五、基于单片机的LED点阵广告牌设计 设计内容:1、能显示不同字符、图形的LED点阵广告牌(30分) 2、用独立按键控制不同字符的切换效果(如闪烁、静止、平移)(30 分) 3、可通过串口从电脑下载更新需要显示的字符(30分) 4、其他创新功能(10分) 图示:略 六、基于单片机的篮球计分器设计 设计内容:1、设计LCD显示篮球比分牌(30分) 2、通过加分按钮可以给A队或B队加分(20分) 3、设计对调功能,A队和B队分数互换,意味着中场交换场地。(20 分) 4、显示比赛倒计时功能(20分) 5、创新内容:如显示第几小节(10分) 显示: A 083: B 079 4th Period 10:25

数字电路设计--------二十四进制计数器

数字电路设计 姓名:*** 学号:****************** 班级:电信111 专业:电子信息科学与技术 一.设计题目 二十四进制计数器的设计 二.设计要求 (1)要求学生掌握74系列的芯片和LED的原理和使用方法。 (2)熟悉集成电路的使用方法,能够运用所学的知识设计一规定的电路。三.设计任务 (1)完成一个二十四进制的计数器。 (2)LED显示从00开始,各位计数从0—9,逢10 进1,是为计数0—5。23显示后,又从00重新开始计数。 四.设计思路与原理 (一)设计思路框图 →→→ → (二)LED简介 LED是一种显示字段的显示器件,7个发光二极管构成七笔字形“8”,一个发光二极管构成小数点。七段发光管分别称为a、b、c、d、e、f,g,构成字型“8”,如图(a)

所示,当在某段发光二极管上施加一定的电压时,某些段被点亮发光。不加电压则变暗,为了保护各段LED不被损坏,需外加限流电阻。 其真值表如下:

(三)原件总汇表:计数器74LS00D(U7A,U7B),74HC390N-6V(U3A,U6A),74LS47N(U1,U5);与门:时钟脉冲:显示器:发光二极管:电感:电容:电源 五.电路图仿真 二十四进制计数器电路仿真

六.心得体会 通过这一次的数字电路设计,是我更深的了解到了数字电路的基础知识,电路分析与计算的方法。利用仿真软件对电路进行一系列的分析仿真,更加抽象的将理论知识与实际电路结合在一起,加深了对数电一些基本定理的理解与运用。虽然在这学期中,数字电子技术基础学的不是很好,但是在这次的课程设计中通过同学的帮组还是完成了。虽然做的不是很好,但是从中也让我明白了:要想做好这个课程设计,就必须认认真真地去做,不要怕麻烦,遇到不懂的问题就要主动去问同学或者老师。和查阅材料,保持着一个积极向上的心态,发挥我们自己的主观能动性和创造了才能让我们做的更好。在这次课程设计中让我学到了很多东西,在经过我们一个学期的数字电子技术基础课后,我们已经对数字电子技术有一定的了解,让我们有了一定的基础可以独立完成数字电子技术基础课程设计了,不过当中还是遇到许多不懂的问题。

产品计数器课设1

燕山大学课程设计说明书 产 品 计 数 器

光电计数器的设计 摘要 本系统采用的是以单片机STC89c52为核心的自动计数器。采用反射式光电传感器,将激光发射管与接收管相邻安放,每当物体通过一次,激光就被物体遮挡一次,光电接收管的输出电压就发生一次变化,这个变化的电压信号通过放大和处理后,形成计数脉冲,输入至STC89c52单片机的P1口,通过软件控制用LED 加以显示,便可实现对物体的计数统计。本计数器可将机械或人工计数方式变为电子计数,并且采用LED数码管显示,可适用于诸多行业,以满足现代生产、生活方式的需求。 所谓的光电式传感器是将光信号转化为电信号的一种传感器。它的理论基础是光电效应。这类效应大致可分为三类。第一类是外光电效应,即在光照射下,能使电子逸出物体表面。利用这种效应所做成的器件有真空光电管、光电倍增管等。第二类是内光电效应,即在光线照射下,能使物质的电阻率改变。这类器件包括各类半导体光敏电阻。第三类是光生伏特效应,即在光线作用下,物体内产生电动势的现象,此电动势称为光生电动势。这类器件包括光电池、光电晶体管等。光电效应都是利用光电元件受光照后,电特性发生变化。敏感的光波长是在可见光附近,包括红外波长和紫外波长。市场上的光电计数器采用的光电传感器有摄像头、光电管等,采用的光的种类有普通光和激光,可见光和不可见光等。光电传感器一般由光源、光学通路和光电元件三部分组成。光电式传感器是以光电器件作为转换元件的传感器,光电检测方法具有精度高、应用快、非接触等优点,而可测参数多,光电传感器的结构简单,形式灵活多变因此,光电式传感器在检测和控制中应用非常广泛。 【关键词】计数器光电传感器单片机数码管

基于QuartusII的同步计数器设计

基于QuartusII的同步计数器设计 目录 一、软件及语言概述 二、实验设计 三、学习感悟 四、参考文献 一、软件及语言概述 1.1软件介绍: Quartus II是Altera公司在21 世纪初推出的FPGA/CPLD开发环境,是Altera前一代FPGA/CPLD集成开发环境MAX+PLUS II的更新换代产品,其优点是功能强大、界面友好、使用便捷。它支持原理图、VHDL、VerilogHDL以及AHDL 等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。Quartus II支持Altera的IP内核,包含了 LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性,加快了设计速度。此外,Quartus II通过和DSP Builder工具与Matlab/Simulink的相结合,可以方便的实现各种DSP应用系统;支持Altera 的片上可编程系统开发,集系统设计、嵌入式软件开发。可编程逻辑设计于一体,是一个综合性的开发平台。 Quartus II有严格的设计流程,分为设计输入与约束、分析和综合、布局布线、仿真及编程与配置等。本次仿真设计所用到的版本为Quartus II 9.0,其用户界面如下图所示: 1.2 Verilog HDL语言概述: Verilog HDL即Verilog硬件描述语言,它主要应用于数字电路和系统设计、数字电路和系统仿真等,即利用计算机和相关软件对用Verilog HDL等硬件语言建模的复杂数字逻辑电路设计进行仿真验证,再利用综合软件将设计的数字电路自动综合,以得到符合功能需求并且在相应的硬件电路结构上可以映射实现的数字逻辑网表,然后布局布线,根据网表和选定的实现器件工艺特性自动生成具体电路,同时软件生成选定器件的延时模型,经过仿真验证确定无误后写入器件中,最终实现电路设计。Verilog HDL语言不仅定义了语法而且对每个语法结构都定义了清晰的模拟、仿真语义。因此用这种语言编写的模型能够使用Verilog仿真

基于PLC的传送带控制系统设计说明

城市职业技术学院 毕业设计报告 中文题目基于PLC的传送带控制系统设计 英文题目Design of control system of the conveyor belt based on PLC 姓名徐蒙蒙 所在系部电子信息工程系 所学专业电气自动化 班级名称电气自动化1203 学号 41215302 指导教师晓娓 日期 2014 年11月30 日

目录 摘要............................................................................................................. I Abstrat...................................................................................................... II 一、引言 (1) 二、传送带的概述 (1) (一)传送带系统的概述 (1) (二)传送带的控制要求 (2) 三、传送带控制各系统特点 (2) (一)继电器-接触器控制特点 (2) (二)单片机控制特点 (3) (三)PLC控制特点 (3) 四、基于PLC控制的硬件设计 (4) (一)PLC选型 (4) (二)I/O分配 (5) (三)PLC外部接线图 (7) 五、基于PLC控制的软件设计 (8) (一)程序控制流程图 (8) (二)主电路设计 (9) (三)梯形图 (9) (四)仿真 (14) 六、结束语 (19)

参考文献 (20) 辞 (21) 附录 (22)

生产线产品产量自动计数器电路设计

毕业设计说明书(论文) 课题名称:生产线产品产量自动计数器电路设计 航空电子设备维修专业081331班 学生姓名:赵繁学号29 指导老师:姚卫华技术职称______________ 2011年 4 月 2 日

毕业设计(论文)任务书 学生姓名:赵繁班级:081331 1.毕业设计(论文)题目: 生产线产品产量自动计数器电路设计 2.毕业设计(论文)使用的原始资料数据及设计技术要求: 1、电子技术基础实验; 2、数字电子技术基础 本设计要求发光器件和光接收器件之间的距离大于1m,最大计数值为99,每计数100,用灯闪烁2s指示一下,LED数码管显示计数值,可上电自动复位和外部手动人工复位。 3.毕业设计(论文)工作内容及完成时间: 此设计采用组合与时序逻辑电路,采用模块化方法设计电路图。每计数一百LED灯闪烁2s,同时蜂鸣器发出响声作为提示音。 日期:自2010年12月15日至2011年4月2日 指导老师评语: _____________________________________________________________________________ _____________________________________________________________________________ _____________________________________________________________________________ _____________________________________________________________________________ _________________________________________________________ 指导老师:_______________ 系主任:____________

数字电路实验计数器的设计

数字电路与逻辑设计实验报告实验七计数器的设计 :黄文轩 学号:17310031 班级:光电一班

一、实验目的 熟悉J-K触发器的逻辑功能,掌握J-K触发器构成异步计数器和同步计数器。 二、实验器件 1.数字电路实验箱、数字万用表、示波器。 2.虚拟器件: 74LS73,74LS00, 74LS08, 74LS20 三、实验预习 1. 复习时序逻辑电路设计方法 ①根据设计要求获得真值表 ②画出卡诺图或使用其他方式确定状态转换的规律 ③求出各触发器的驱动方程 ④根据已有方程画出电路图。 2. 按实验内容设计逻辑电路画出逻辑图 Ⅰ、16进制异步计数器的设计 异步计数器的设计思路是将上一级触发器的Q输出作为下一级触发器的时钟信号,置所有触发器的J-K为1,这样每次到达时钟下降沿都发生一次计数,每次前一级 触发器从1变化到0都使得后一级触发器反转,即引发进位操作。 画出由J-K触发器组成的异步计数器电路如下图所示:

使用Multisim仿真验证电路正确性,仿真图中波形从上到下依次是从低位到高位 触发器的输出,以及时钟信号。: 可以看出电路正常执行16进制计数器的功能。 Ⅱ、16进制同步计数器的设计 较异步计数器而言,同步计数器要求电路的每一位信号的变化都发生在相同的时间点。

因此同步计数器各触发器的时钟脉冲必须是同一个时钟信号,这样进位信息就要放置在J-K 输入端,我们可以把J-K端口接在一起,当时钟下降沿到来时,如果满足进位条件(前几位触发器输出都为1)则使JK为1,发生反转实现进位。 画出由J-K触发器和门电路组成的同步计数器电路如下图所示 使用Multisim仿真验证电路正确性,仿真图中波形从上到下依次是从低位到高位触发器的输出,计数器进位输出,以及时钟信号。:

0-99手动计数器的设计要点

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊ 第1章绪论 1.1 计数器介绍 本设计是根据我们所学习的单片机课程,按照课程要求进行的课程设计。单片机技术是一个不可或缺的技术,尤其是对于我们电气专业来说它是我们必须要掌握的技能之一,使我们未来工作和生活的根本。现在的社会是一个信息科技高速发展的社会,也是一个电子技术和微机计算机迅速发展的时代,单片机的档次和水平在不断的提高,其应用的领域和范围也越来越广,成为现代电子系统中最重要的智能化核心部分。 随着计数器技术的不断发展与进步,计数器的种类越来越多,应用的范围越来越广,随之而来的竞争也越来越激烈。过硬的技术也成为众多生产厂商竞争的焦点之一。厂商为了在竞争中处于不败之地,从而不断地改进技术,增加产品的种类。 现计数器的种类以增加到:电磁计数器、电子计数器、机械计数器(拉动机械计数器、转动机械计数器、按动机械计数器、测长机械计数器)、液晶计数器等。计数器的应用范围也遍布印刷、纺织、印染、针织、电缆、电讯、军工、轻工、机械、开关、断路器、矿山、实行多班制的纺织行业的织布机、织带机、制线、制带、造纸、制革、薄膜、高压开关电器产品、试验设备,印刷设备、短路器、医疗、纺织、机械、仓库和码头的货运、行人及车辆过往的数量计数、冶金、食品、国防、包装、配料、石油、化工、发电、机床、仪表、自动化控制等行业。 1.2 本次设计的要求 1) 上电时,数码管显示为00。 2) 利用单片机来制作一个手动计数器,在单片机的管脚上接一个轻触开关,作为手动计数的按钮,用单片机的I/O口接数码管,作为计数器,进行加计数显示。 3) 计数器计数到99后,再按计数按钮,则数码管从00重新开始计数。 1.3 本次设计的目的 1) 学习基本理论在实践中综合运用的初步经验,掌握电路设计的基本方法、设计步骤,培养综合设计与调试能力。 2) 掌握汇编语言程序设计方法。 3) 培养实践技能,提高分析和解决实际问题的能力。

红外计数器的设计

红外计数器的设计 0引言 随着人们生活水平的不断提高,人们越来越追求人性化的事物,计数器是不可缺少的必需品。本文所设计的计数器采用红外线遮光方式,抗干扰性好,可靠性高,可用于测量宾馆、饭店、商场、超市、博物馆、展览观、车站、码头、银行等场所的人员数量及人员流通数量。该产品应用广泛,也可以测量流水线上的产品数量,以及可检查产品有无缺损。因此,研究计数器及扩大其应用,有着非常现实的意义。 1红外技术的介绍 红外技术的内容包含四个主要部分:红外辐射的性质,其中有受热物体所发射的辐射在光谱、强度和方向的分布;辐射在媒质中的传播特性--反射、折射、衍射和散射;热电效应和光电效应等。红外元件、部件的研制,包括辐射源、微型制冷器、红外窗口材料和滤光电等。把各种红外元件、部件构成系统的光学、电子学和精密机械的组成部分。红外技术在军事上和国民经济中有着广泛的应用。 红外技术有很多应用,例如在夜晚可以用看见物体的红外线来确定物体的位置;用一个红外线发射器和一个红外线接收器在生产上可以计算商品的数量;军事上可以用来防止敌人侵入,当红外线发射器和接收器被挡住,警报就会响;在医学上还可以查看人的病情等等。 红外线计数器分为对射式和反射式两种电路。对射式红外线是一个发射头和一个接收头在中间如有物件通过就遮挡一下光线,输出脉冲信号触发计数电路;反射式红外线是把发射头和接收头做在一块成为一个红外探头,当探头前有一个物件出现就把发射头的红外线反射给接收头,探头输出一个脉冲给计数器计数。 本文所设计的计数器是采用红外线遮光方式,利用红外对射管作计数传感器,当有物体通过时光被遮挡住,接收模块输出一个高电平脉冲,对此脉冲进行计数,就可实现对产品的统计。基于这种光电检测原理,配合组成集成电路,就可设计对射式红外线计数器。实践证明,该装置抗干扰能力强, 红外计数器的设计 Design of Infrared Counter 杨汉祥张琦 Yang Hanxiang Zhang Qi (赣南师范学院物理与电子信息学院,江西赣州341000) (School of Physics and Electronic Information Science,Gannan Teachers'College,Jiangxi Ganzhou341000) 摘要:计数器在人们日常生活中应用越来越多,已成为不可缺少的必需品。本文介绍了红外计数器的发展前景和现状,设计了一种由数字电路来实现的红外计数器,详细阐述了红外计数器的工作原理和构成,讨论了各模块的实现方法,并对它们进行了严格的理论逻辑推敲和实验测试,以达到设计要求。它可以解决计数中的增减问题,对任意流水线产品及来往客流自动计数。因此,研究红外计数器及扩大其应用,有着非常现实的意义。 关键词:自动计数;红外检测;8位数码管 中图分类号:TP368.4文献标识码:B文章编号:1671-4792-(2009)7-0187-04 Abstract:Counters are widely used in our daily life and gradually become a necessity.Here we introduce the current status and al-so the future of infrared counters,then present a design on top of digital circuit.And the working theory and construct are described and implementation of each module is discussed here.Strict logical reasoning and real experiments have approved each step is correct in the process which have fulfilled the design specifications.To summarize,infrared counters can solve increase/decrease problem in count-ing,such as automatic counting for industrial pipelining and traffic.Therefore,the study of infrared counter and expanding its applica-tions make very practical sense in above terms. Keywords:Automatic Counting;Infrared Detection;8-bit Digital Tube 187

一种多功能计数器的设计

一种多功能计数器的设计 摘要:计数器在我们的日常生活中用得非常普遍,在计算机和数字化设备中更是无处不在。自动化生产流水线上对产品的计数更为重要,但一般计数器专用性强,一种计数器只能对某一种材料或特性的产品进行计数,在一定程度上限制了它的计数对象。鉴于此,本设计制作一个能对不同材料的产品进行计数的多功能计数器,扩大一般计数器的应用范围。 关键词:产品;传感器;计数器 abstract:counter is widely used in our life, especially in computer and digital equipment. but with the problem of material and property of products on pipelining, it is restricted badly on this tache. one counter may barely count the products of same material, though broad usage, its simplex function at a certain extent restrict its using in depth. considering the disadvantage of counter, the objective of this design is definite, that is we can make a multifunctional counter, which enlarge its scope of application. key words: product; sensor; counter 1 引言 计数器在生产实践中的广泛应用大家有目共睹,计数器是数字化设备的基石,少了计数器,大大影响其功能。但就计数器本身而言,

100进制同步计数器设计

实验名称:100进制同步计数器设计 专业班级:姓名:学号:实验日期: 一、实验目的: 1、掌握计数器的原理及设计方法; 2、设计一个0~100的计数器; 3、利用实验二的七段数码管电路进行显示; 二、实验要求: 1、用VHDL 语言进行描写; 2、有计数显示输出; 3、有清零端和计数使能端; 三、实验结果: 1. VHDL程序 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; PACKAGE my_pkg IS Component nd2 -- 或门 PORT (a,b: IN STD_LOGIC; c: OUT STD_LOGIC); END Component; Component led_decoder PORT (din:in std_logic_vector(3 downto 0 ); --四位二进制码输入 seg:out std_logic_vector(6 downto 0) ); --输出LED七段码 END Component; 1

Component CNT60 --2位BCD码60进制计数器 PORT ( CR:IN STD_LOGIC; EN:IN STD_LOGIC; CLK:IN STD_LOGIC; OUTLOW:BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0); OUTHIGH:BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0) ); END Component; Component CNT100 --带使能和清零信号的100进制计数器PORT ( CLK:IN STD_LOGIC; EN:IN STD_LOGIC; CLR:IN STD_LOGIC; OUTLOW:BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0); OUTHIGH:BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0) ); END Component; Component freq_div --50MHZ时钟分频出1Hz PORT ( clkinput : IN STD_LOGIC; output : OUT STD_LOGIC ); END Component;

计数器设计和原理

二.计数器设计 1.实验目的 计数器在数字逻辑设计中的应用十分广泛,可以对时钟信号进行计数,分频和产生序列信号,也可以用在计时器和串并转换等电路。这次实验我们就来学习一下如何用Robei和Verilog语言来设计一个4比特计数器。 2.实验要求 计数器对每个时钟脉冲进行技术,并将计数值输出出来。这个实验我们来设计一个4比特的计数器,其技术范围在0~F之间,也就是计数到最大值16. 设计波形要求如图1所示。 图1. 计数器输出波形要求 3.实验内容 3.1 模型设计 1)新建一个模型。点击工具栏上的图标,或者点击菜单“File”然后在下 拉菜单中选择“New”,会有一个对话框弹出来(如图2所示)。在弹出的对话框中设置你所设计的模型。

图2. 新建一个项目 参数填写完成后点击“OK”按钮,Robei就会生成一个新的模块,名字就是counter,如图3所示: 图3. 计数器界面图 2)修改模型。在自动生成的界面图上进行名称的修改,输入引脚为clock, enable 和reset,输出引脚修改成count。其中count引脚的“Datasize”为4比特,用户可以输入4,也可以输入3:0。为了区分每个引脚,我们可以修改每个引脚的Color值,并点回车保存。修改完成后如图4所示。如果选中模块,按“F1”键,就会自动生成一个Datasheet,如图5所示。

图4. 修改引脚属性 图5. “Datasheet”截图 3)输入算法。点击模型下方的Code(如图6所示)进入代码设计区。

图6. 点击Code输入算法 在代码设计区内输入以下Verilog代码: always @ (posedge clock) //学习always语句的写法,并设置敏感信号。时钟上升沿触发begin //学习Verilog if else语句的写法 if (reset == 1) begin count<= 0; end //if enable is 1, counter starts to count else if (enable == 1) begin count <= count + 1; end end 4)保存。点击工具栏图标,或者点击菜单“File”中的下拉菜单“Saveas”, 将模型另存到一个文件夹中。 5)运行。在工具栏点击或者点击菜单“Build”的下来菜单“Run”,执 行代码检查。如果有错误,会在输出窗口中显示。如果没有错误提示,恭喜,模型counter设计完成。 3.2测试文件设计

产品计数器的电路设计

河南城建学院 《安全检测技术》课程设计任务书 产品计数器的电路设计 班级0232111 姓名 学号023211128 专业安全监测技术 指导教师黄战峰、马斌 环境与市政工程系 2012年6月14日

摘要 计数器对某物件进行自动计数,在实际生产生活中具有广泛的应用,对通过的物体进行计数,实现统计数据的搜集,如在生产流水线包装数量控制等领域的应用,能节省劳动力有能高效地完成任务。光电计数器采用光电传感器构成的广电门实现对通过光电门的物体进行计数,是一种非接触式计数,在部分场合有着其无比的优越性,从而使其广泛应用于工业生产、实时监测、自动化控制等领域。 本设计为实现光电计数器的功能,采用模数结合的电路,以红外对射光电传感器为传感器件。电路主要分为信号采集电路、两位十进制计数电路、数码显示电路、报警电路四个模块,分别实现对通过光电门的物体感应,计数,显示,并按要求完成报警功能。计数范围为一百,可以预设计数数目,当计数达到设定后,停止计数并报警,可手动清除报警;还可以计数达一百时,闪灯报警两秒。 关键词:计数器光电传感器数码显示报警

目录摘要0 前言3 第一章设计内容及要求3 第二章设计方案4 第三章系统组成5 3.1 系统框图5 3.2 单元电路设计5 3.2.1 信号采集电路设计6 3.2.2 计数电路10 3.2.3 数码显示电路13 3.2.4 定数报警电路14 3.2.5 满百报警电路18 附录一总原理图19 附录二元件清单20 总结21 参考文献22

前言 工业生产中常常需要自动统计产品的数量,计数器在这里有其用武之地。而数字式电子计数器有直观和计数精确的优点,目前已在各种行业中普遍使用。数字式电子计数器有多种计数触发方式,它是由实际使用条件和环境决定的,通常分为接触式计数器和非接触式计数器两种。本设计的光电计数器为非接触式计数器中的一种。 光电计数器采用光电传感器利用光学原理实现对物件的数目统计。光电式传感器是将光信号转化为电信号的一种传感器。它的理论基础是光电效应。这类效应大致可分为三类。第一类是外光电效应,即在光照射下,能使电子逸出物体表面。利用这种效应所做成的器件有真空光电管、光电倍增管等。第二类是内光电效应,即在光线照射下,能使物质的电阻率改变。这类器件包括各类半导体光敏电阻。第三类是光生伏特效应,即在光线作用下,物体内产生电动势的现象,此电动势称为光生电动势。这类器件包括光电池、光电晶体管等。光电效应都是利用光电元件受光照后,电特性发生变化。敏感的光波长是在可见光附近,包括红外波长和紫外波长。市场上的光电计数器采用的光电传感器有摄像头、光电管等,采用的光的种类有普通光和激光,可见光和不可见光等。本文采用的传感器为红外光电传感器。 第一章设计内容及要求 利用发光二极管和光敏三极管作为光电计数器的传感器进行计数,用数码管显示计数值,当数码管显示值与设定值相同时报警,此外计数器停止计

生产线计数器系统的设计

单片机技术及应用 设计题目:生产线计数器系统的设计 专业班级:机械08-3班 姓名:杨亮亮 学号:3080444913 桂林理工大学机控学院 2011年5月22日

目录 前言............................. 错误!未定义书签。 1 设计要求......................... 错误!未定义书签。 2 设计目的......................... 错误!未定义书签。 3 设计意义......................... 错误!未定义书签。 4 国内外产品计数器的概况............. 错误!未定义书签。 5 总体方案的设计与分析............... 错误!未定义书签。 6 硬件电路......................... 错误!未定义书签。 6.1 AT89S51控制电路.............. 错误!未定义书签。 6.2 整形电路.................... 错误!未定义书签。 7 软件设计......................... 错误!未定义书签。 7.1程序流程图.................... 错误!未定义书签。 4.2主要程序代码.................. 错误!未定义书签。第5章安装与调试................... 错误!未定义书签。第6章制作课题心得 ................. 错误!未定义书签。附录 .. (10) 1. 总原理图 .................... 错误!未定义书签。 2. PCB图....................... 错误!未定义书签。 4.元件清单 (13) 3. 3D效果图.................... 错误!未定义书签。

数电脉搏计数器电路课程设计

烟台南山学院 数字电子技术课程设计题目脉搏计数电路设计 姓名:___ XXXXXX ___ 所在学院:_工学院电气与电子工程系 所学专业:_ 自动化 班级:___电气工程XXXX 学号:___XXXXXXXXXXXXXX 指导教师:_____ XXXXXXXX ___ 完成时间:____ XXXXXXXXXXXXX

数电课程设计任务书 一、基本情况 学时:40学时学分:1学分适应班级:12电气工程 二、进度安排 本设计共安排1周,合计40学时,具体分配如下: 实习动员及准备工作:2学时 总体方案设计:4学时 查阅资料,讨论设计:24学时 撰写设计报告:8学时 总结:2学时 教师辅导:随时 三、基本要求 1、课程设计的基本要求 数字电子技术课程设计是在学习完数字电子课程之后,按照课程教学要求,对学生进行综合性训练的一个实践教学环节。主要是培养学生综合运用理论知识的能力,分析问题和解决问题的能力,以及根据实际要求进行独立设计的能力。初步掌握数字电子线路的安装、布线、焊接、调试等基本技能;熟练掌握电子电路基本元器件的使用方法,训练、提高读图能力;掌握组装调试方法。其中理论设计包括总体方案选择,具体电路设计,选择元器件及计算参数等,课程设计的最后要写出设计总结报告,把设计容进行全面的总结,若有实践条件,把实践容上升到理论高度。 2、课程设计的教学要求 数字电子技术课程设计的教学采用相对集中的方式进行,以班为单位全班学生集中到设计室进行。做到实训教学课堂化,严格考勤制度,在实训期间累计旷课达到6节以上,或者迟到、早退累计达到8次以上的学生,该课程考核按不及格处理。在实训期间需要外出查找资料,必须在指定的时间方可外出。 课程设计的任务相对分散,每3名学生组成一个小组,完成一个课题的设计。小组成员既有分工、又要协作,同一小组的成员之间可以相互探讨、协商,可以互相借鉴或参考别人

基于51单片机的流水线产品计数器设计_毕业论文

毕业论文声明 本人郑重声明: 1.此毕业论文是本人在指导教师指导下独立进行研究取得的成果。除了特别加以标注地方外,本文不包含他人或其它机构已经发表或撰写过的研究成果。对本文研究做出重要贡献的个人与集体均已在文中作了明确标明。本人完全意识到本声明的法律结果由本人承担。 2.本人完全了解学校、学院有关保留、使用学位论文的规定,同意学校与学院保留并向国家有关部门或机构送交此论文的复印件和电子版,允许此文被查阅和借阅。本人授权大学学院可以将此文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本文。 3.若在大学学院毕业论文审查小组复审中,发现本文有抄袭,一切后果均由本人承担,与毕业论文指导老师无关。 4.本人所呈交的毕业论文,是在指导老师的指导下独立进行研究所取得的成果。论文中凡引用他人已经发布或未发表的成果、数据、观点等,均已明确注明出处。论文中已经注明引用的内容外,不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究成果做出重要贡献的个人和集体,均已在论文中已明确的方式标明。 学位论文作者(签名): 年月 关于毕业论文使用授权的声明

本人在指导老师的指导下所完成的论文及相关的资料(包括图纸、实验记录、原始数据、实物照片、图片、录音带、设计手稿等),知识产权归属华北电力大学。本人完全了解大学有关保存,使用毕业论文的规定。同意学校保存或向国家有关部门或机构送交论文的纸质版或电子版,允许论文被查阅或借阅。本人授权大学可以将本毕业论文的全部或部分内容编入有关数据库进行检索,可以采用任何复制手段保存或编汇本毕业论文。如果发表相关成果,一定征得指导教师同意,且第一署名单位为大学。本人毕业后使用毕业论文或与该论文直接相关的学术论文或成果时,第一署名单位仍然为大学。本人完全了解大学关于收集、保存、使用学位论文的规定,同意如下各项内容: 按照学校要求提交学位论文的印刷本和电子版本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、扫描、数字化或其它手段保存或汇编本学位论文;学校有权提供目录检索以及提供本学位论文全文或者部分的阅览服务;学校有权按有关规定向国家有关部门或者机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入学校有关数据库和收录到《中国学位论文全文数据库》进行信息服务。在不以赢利为目的的前提下,学校可以适当复制论文的部分或全部内容用于学术活动。 论文作者签名:日期: 指导教师签名:日期:

相关文档
最新文档