最新日志

发表于:2008-7-11 11:28:06
标签:无标签

1

大三的生活结束了

今天是考完试的最后一天,这也就意味着我的大三生活结束了.回顾这一学期的所做所为,感觉没有虚度,先后制作了好多小电子玩艺,也学到了一些东西.马上就要开始ALTERA的SOPC竞赛了,打算好好准备,争取拿个奖,呵呵!!

点击此处查看原文 >>

系统分类: 生活点滴   |    用户分类: 无分类    |    来源: 原创

评论(2) | 阅读(207)
发表于:2008-5-24 22:00:21
标签:无标签

1

74系列芯片功能大全

器件代号 器件名称 74 74LS 74HC
00 四2输入端与非门 √ √ √
01 四2输入端与非门(OC) √ √
02 四2输入端或非门 √ √ √
03 四2输入端与非门(OC) √ √
04 六反相器 √ √ √
05 六反相器(OC) √ √
06 六高压输出反相器(OC,30V) √ √
07 六高压输出缓冲,驱动器(OC,30V) √ √ √
08 四2输入端与门 √ √ √
09 四2输入端与门(OC) √ √ √
10 三3输入端与非门 √ √ √
11 三3输入端与门 √ √
12 三3输入端与非门(OC) √ √ √
13 双4输入端与非门 √ √ √
14 六反相器 √ √ √
15 三3输入端与门 (OC) √ √
16 六高压输出反相器(OC,15V) √
17 六高压输出缓冲,驱动器(OC,15V) √
20 双4输入端与非门 √ √ √
21 双4输入端与门 √ √ √
22 双4输入端与非门(OC) √ √
25 双4输入端或非门(有选通端) √ √ √
26 四2输入端高压输出与非缓冲器 √ √ √
27 三3输入端或非门 √ √ √
28 四2输入端或非缓冲器 √ √ √
30 8输入端与非门 √ √ √
32 四2输入端或门 √ √ √
33 四2输入端或非缓冲器(OC) √ √
37 四2输入端与非缓冲器 √ √
38 四2输入端与非缓冲器(OC) √ √
40 双4输入端与非缓冲器 √ √ √
42 4线-10线译码器(BCD输入) √ √
43 4线-10线译码器(余3码输入) √
44 4线-10线译码器(余3葛莱码输入) √
48 4线-7段译码器 √
49 4线-7段译码器 √
50 双2路2-2输入与或非门 √ √ √
51 2路3-3输入,2路2-2输入与或非门 √ √ √
52 4路2-3-2-2输入与或门 √
53 4路2-2-2-2输入与或非门 √
54 4路2-3-3-2输入与或非门 √ √
55 2路4-4输入与或非门 √
60 双4输入与扩展器 √ √
61 三3输入与扩展器 √
62 4路2-3-3-2输入与或扩展器 √
64 4路4-2-3-2输入与或非门 √
65 4路4-2-3-2输入与或非门(OC) √
70 与门输入J-K触发器 √
71 与或门输入J-K触发器 √
72 与门输入J-K触发器 √
74 双上升沿D型触发器 √ √
78 双D型触发器 √ √
85 四位数值比较器 √
86 四2输入端异或门 √ √ √
87 4位二进制原码/反码 √
95 4位移位寄存器 √
101 与或门输入J-K触发器 √
102 与门输入J-K触发器 √
107 双主-从J-K触发器 √
108 双主-从J-K触发器 √
109 双主-从J-K触发器 √
110 与门输入J-K触发器 √
111 双主-从J-K触发器 √ √
112 双下降沿J-K触发器 √
113 双下降沿J-K触发器 √
114 双下降沿J-K触发器 √
116 双4位锁存器 √
120 双脉冲同步驱动器 √
121 单稳态触发器 √ √ √
122 可重触发单稳态触发器 √ √ √
123 可重触发双稳态触发器 √ √ √
125 四总线缓冲器 √ √ √
126 四总线缓冲器 √ √ √
128 四2输入端或非线驱动器 √ √ √
132 四2输入端与非门 √ √ √

 

74系列芯片功能大全
2007-05-18 12:02

7400 TTL 2输入端四与非门
7401 TTL 集电极开路2输入端四与非门
7402 TTL 2输入端四或非门
7403 TTL 集电极开路2输入端四与非门
7404 TTL 六反相器
7405 TTL 集电极开路六反相器
7406 TTL 集电极开路六反相高压驱动器
7407 TTL 集电极开路六正相高压驱动器
7408 TTL 2输入端四与门
7409 TTL 集电极开路2输入端四与门
7410 TTL 3输入端3与非门
7411 TTL 3输入端3与门
7412 TTL 开路输出3输入端三与非门
7413 TTL 4输入端双与非施密特触发器
7414 TTL 六反相施密特触发器
7415 TTL 开路输出3输入端三与门
7416 TTL 开路输出六反相缓冲/驱动器
7417 TTL 开路输出六同相缓冲/驱动器
7420 TTL 4输入端双与非门
7421 TTL 4输入端双与门
7422 TTL 开路输出4输入端双与非门
7427 TTL 3输入端三或非门
7428 TTL 2输入端四或非门缓冲器
7430 TTL 8输入端与非门
7432 TTL 2输入端四或门
7433 TTL 开路输出2输入端四或非缓冲器
7437 TTL 开路输出2输入端四与非缓冲器
7438 TTL 开路输出2输入端四与非缓冲器
7439 TTL 开路输出2输入端四与非缓冲器
7440 TTL 4输入端双与非缓冲器
7442 TTL BCD—十进制代码转换器
7445 TTL BCD—十进制代码转换/驱动器
7446 TTL BCD—7段低有效译码/驱动器
7447 TTL BCD—7段高有效译码/驱动器
7448 TTL BCD—7段译码器/内部上拉输出驱动
7450 TTL 2-3/2-2输入端双与或非门
7451 TTL 2-3/2-2输入端双与或非门
7454 TTL 四路输入与或非门
7455 TTL 4输入端二路输入与或非门
7473 TTL 带清除负触发双J-K触发器
7474 TTL 带置位复位正触发双D触发器
7476 TTL 带预置清除双J-K触发器
7483 TTL 四位二进制快速进位全加器
7485 TTL 四位数字比较器
7486 TTL 2输入端四异或门
7490 TTL 可二/五分频十进制计数器
7493 TTL 可二/八分频二进制计数器
7495 TTL 四位并行输入\输出移位寄存器
7497 TTL 6位同步二进制乘法器
74107 TTL 带清除主从双J-K触发器
74109 TTL 带预置清除正触发双J-K触发器
74112 TTL 带预置清除负触发双J-K触发器
74121 TTL 单稳态多谐振荡器
74122 TTL 可再触发单稳态多谐振荡器
74123 TTL 双可再触发单稳态多谐振荡器
74125 TTL 三态输出高有效四总线缓冲门
74126 TTL 三态输出低有效四总线缓冲门
74132 TTL 2输入端四与非施密特触发器
74133 TTL 13输入端与非门
74136 TTL 四异或门
74138 TTL 3-8线译码器/复工器
74139 TTL 双2-4线译码器/复工器
74145 TTL BCD—十进制译码/驱动器
74150 TTL 16选1数据选择/多路开关
74151 TTL 8选1数据选择器
74153 TTL 双4选1数据选择器
74154 TTL 4线—16线译码器
74155 TTL 图腾柱输出译码器/分配器
74156 TTL 开路输出译码器/分配器
74157 TTL 同相输出四2选1数据选择器
74158 TTL 反相输出四2选1数据选择器
74160 TTL 可预置BCD异步清除计数器
74161 TTL 可予制四位二进制异步清除计数器
74162 TTL 可预置BCD同步清除计数器
74163 TTL 可予制四位二进制同步清除计数器
74164 TTL 八位串行入/并行输出移位寄存器
74165 TTL 八位并行入/串行输出移位寄存器
74166 TTL 八位并入/串出移位寄存器
74169 TTL 二进制四位加/减同步计数器
74170 TTL 开路输出4×4寄存器堆
74173 TTL 三态输出四位D型寄存器
74174 TTL 带公共时钟和复位六D触发器
74175 TTL 带公共时钟和复位四D触发器
74180 TTL 9位奇数/偶数发生器/校验器
74181 TTL 算术逻辑单元/函数发生器
74185 TTL 二进制—BCD代码转换器
74190 TTL BCD同步加/减计数器
74191 TTL 二进制同步可逆计数器
74192 TTL 可预置BCD双时钟可逆计数器
74193 TTL 可预置四位二进制双时钟可逆计数器
74194 TTL 四位双向通用移位寄存器
74195 TTL 四位并行通道移位寄存器
74196 TTL 十进制/二-十进制可预置计数锁存器
74197 TTL 二进制可预置锁存器/计数器
74221 TTL 双/单稳态多谐振荡器
74240 TTL 八反相三态缓冲器/线驱动器
74241 TTL 八同相三态缓冲器/线驱动器
74243 TTL 四同相三态总线收发器
74244 TTL 八同相三态缓冲器/线驱动器
74245 TTL 八同相三态总线收发器
74247 TTL BCD—7段15V输出译码/驱动器
74248 TTL BCD—7段译码/升压输出驱动器
74249 TTL BCD—7段译码/开路输出驱动器
74251 TTL 三态输出8选1数据选择器/复工器
74253 TTL 三态输出双4选1数据选择器/复工器
74256 TTL 双四位可寻址锁存器
74257 TTL 三态原码四2选1数据选择器/复工器
74258 TTL 三态反码四2选1数据选择器/复工器
74259 TTL 八位可寻址锁存器/3-8线译码器
74260 TTL 5输入端双或非门
74266 TTL 2输入端四异或非门
74273 TTL 带公共时钟复位八D触发器
74279 TTL 四图腾柱输出S-R锁存器
74283 TTL 4位二进制全加器
74290 TTL 二/五分频十进制计数器
74293 TTL 二/八分频四位二进制计数器
74295 TTL 四位双向通用移位寄存器
74298 TTL 四2输入多路带存贮开关
74299 TTL 三态输出八位通用移位寄存器
74322 TTL 带符号扩展端八位移位寄存器
74323 TTL 三态输出八位双向移位/存贮寄存器
74347 TTL BCD—7段译码器/驱动器
74352 TTL 双4选1数据选择器/复工器
74353 TTL 三态输出双4选1数据选择器/复工器
74365 TTL 门使能输入三态输出六同相线驱动器
74366 TTL 门使能输入三态输出六反相线驱动器
74367 TTL 4/2线使能输入三态六同相线驱动器
74368 TTL 4/2线使能输入三态六反相线驱动器
74373 TTL 三态同相八D锁存器
74374 TTL 三态反相八D锁存器
74375 TTL 4位双稳态锁存器
74377 TTL 单边输出公共使能八D锁存器
74378 TTL 单边输出公共使能六D锁存器
74379 TTL 双边输出公共使能四D锁存器
74380 TTL 多功能八进制寄存器
74390 TTL 双十进制计数器
74393 TTL 双四位二进制计数器
74447 TTL BCD—7段译码器/驱动器
74450 TTL 16:1多路转接复用器多工器
74451 TTL 双8:1多路转接复用器多工器
74453 TTL 四4:1多路转接复用器多工器
74460 TTL 十位比较器
74461 TTL 八进制计数器
74465 TTL 三态同相2与使能端八总线缓冲器
74466 TTL 三态反相2与使能八总线缓冲器
74467 TTL 三态同相2使能端八总线缓冲器
74468 TTL 三态反相2使能端八总线缓冲器
74469 TTL 八位双向计数器
74490 TTL 双十进制计数器74491
74498 TTL 八进制移位寄存器
74502 TTL 八位逐次逼近寄存器
74503 TTL 八位逐次逼近寄存器
74533 TTL 三态反相八D锁存器
74534 TTL 三态反相八D锁存器
74540 TTL 八位三态反相输出总线缓冲器
74563 TTL 八位三态反相输出触发器
74564 TTL 八位三态反相输出D触发器
74573 TTL 八位三态输出触发器
74574 TTL 八位三态输出D触发器
74645 TTL 三态输出八同相总线传送接收器
74670 TTL 三态输出4×4寄存器堆

点击此处查看原文 >>

系统分类: 消费电子   |    用户分类: 无分类    |    来源: 转贴

评论(1) | 阅读(232)
发表于:2008-5-3 15:17:31
标签:无标签

1

12864图形显示

前些天一直对液晶显示图片不是很理解.在放假的这几天,我仔细想了一下这个图形显示的原理,现在已经清楚了.上传几张显示的图片看看吧.哈哈!

                               师大徽标

 

                             我的电脑

                              LOVE YOU

点击此处查看原文 >>

系统分类: 单片机   |    用户分类: 无分类    |    来源: 无分类

评论(0) | 阅读(336)
发表于:2008-4-28 22:06:11
标签:无标签

1

89S52烧录程序问题

请问在给89S52烧录程序的时候,电源应该接多少伏?

点击此处查看原文 >>

系统分类: 单片机   |    用户分类: 无分类    |    来源: 无分类

评论(2) | 阅读(244)
发表于:2008-4-27 15:26:50
标签:无标签

1

AT89S52问题

问一个菜鸟问题,希望大家不要介意.请问AT89S52单片机能多次下载吗?

点击此处查看原文 >>

系统分类: 单片机   |    用户分类: 无分类    |    来源: 无分类

评论(2) | 阅读(283)
发表于:2008-4-22 18:11:05
标签:无标签

1

USB接口芯片的原理及应用

随着计算机技术的快速发展,USB移动存储设备的使用已经非常普遍,因此在一些需要转存数据的设备、仪器上使用USB移动存储设备接口的芯片便相继产生了,CH375就是其中之一,它是一个USB总线的通用接口芯片,支持HOST主机方式和SLAVE设备方式。

     在本地端,CH375具有8位数据总线和读、写、片选控制线以及中断输出,可以方便地挂接到单片机/DSP/MCU等控制器的系统总线上。在USB主机方式下,CH375还提供了串行通信方式,通过串行输入、串行输出和中断输出与单片机/DSP/MCU等相连接。CH375的USB主机方式支持各种常用的USB全速设备,外部单片机/DSP/MCU可以通过CH375按照相应的USB协议与USB设备通信。

     CH375芯片内部结构

     1 内部结构

     CH375芯片内部集成了PLL倍频器、主从USB接口SIE、数据缓冲区、被动并行接口、异步串行接口、命令解释器、控制传输的协议处理器、通用的固件程序等。CH375芯片引脚排列如图1所示。

    

    

     图 1 CH375芯片引脚排列

     2 内部物理端点

     CH375芯片内部具有7个物理端点。端点0是默认端点,支持上传和下传,上传和下传缓冲区各是8B;端点1包括上传端点和下传端点,上传和下传缓冲区各是8B,上传端点的端点号是81H,下传端点的端点号是01H;端点2包括上传端点和下传端点,上传和下传缓冲区各是64B,上传端点的端点号是82H,下传端点的端点号是02H。

     主机端点包括输出端点和输入端点,输出和输入缓冲区各是64B,主机端点与端点2合用同一组缓冲区,主机端点的输出缓冲区就是端点2的上传缓冲区,主机端点的输入缓冲区就是端点2的下传缓冲区。

     其中,CH375的端点0、端点1、端点2只用于USB设备方式,在USB主机方式下只需要用到主机端点。

     软件接口

     对于USB存储设备的应用,CH375直接提供了数据块的读写接口,以512b的物理扇区为基本读写单位,从而将USB存储设备简化为一种外部数据存储器,单片机可以自由读写USB存储设备中的数据,也可以自由定义其数据结构。

     CH375以C语言子程序库提供了USB存储设备的文件级接口,这些应用层接口API包含了常用的文件级操作,可以移植并嵌入到各种常用的单片机程序中。

     CH375的U盘文件级子程序库具有以下特性:支持常用的FAT12、FAT16 和FAT32 文件系统,磁盘容量可达100GB以上,支持多级子目录,支持8.3格式的大写字母文件名,支持文件打开、新建、删除、读写以及搜索等。

     CH375的文件级接口API子程序需要大约600b的随机存储器RAM 作为缓冲区。所有API在调用后都有操作状态返回,但不一定有应答数据。有关API参数的说明请参考CH375数据手册。

     CH375在单片机读写U盘中的电路原理图

     图2给出了MCS-51单片机读写U盘的电路原理图,如果CH375芯片的TXD引脚悬空或者没有通过下接电阻接地,那么CH375工作于串口方式。在串口方式下,CH375只需要与单片机/DSP/MCU连接3个信号线,TXD引脚、RXD引脚以及INT#引脚,其他引脚都可以悬空。除了连接线较少之外,其他外围电路与并口方式基本相同。由于INT#引脚和TXD 引脚在CH375复位期间只能提供微弱的高电平输出电流,在进行较远距离的连接时,为了避免INT#或者TXD在CH375复位期间受到干扰而导致单片机误操作,可以在INT#引脚或者TXD引脚上加阻值为1~5kΩ的上拉电阻,以维持较稳定的高电平。在CH375芯片复位完成后,INT#引脚和TXD引脚将能够提供5mA的高电平输出电流或者5mA的低电平吸入电流。

    

    

    

     图2 MCS-51单片机读写U盘的电路原理图

    

     单片机读写U盘的接口

    

     由于CH375内置了处理Mass-Storage海量存储设备的专用通信协议的固件,所以嵌入式系统的单片机可以通过CH375将U盘(USB闪存盘、USB外置硬盘)作为可移动的大容量存储器。数据读写只需要几条指令,而不需要详细了解USB通信协议。

    

     如果嵌入式系统需要将USB存储设备组织为文件系统,那么可以直接调用CH375文件级子程序库提供的接口API,由子程序库处理文件系统。

    

     CH375主机USB-HOST的电路设计注意事项

    

     某些USB设备带电插入时常出现如下问题:

    

     ● CH375复位或者单片机复位(尤其是采用uP 监控电路的单片机系统)。

    

     ● CH375或者单片机突然工作不正常,失去控制。

    

     ● CH375芯片的工作电流突然增大并且持续如此,时间长了芯片发热烫手。

    

     出现上述问题时可参考如下解决方法:

    

     ● 给USB插座单独供电,这样,即使USB设备刚插上时存在电容充电过程,也不会影响单片机和CH375。变通方法是,将5V主电源分别通过两个独立的限流电感后(或者在PCB中电源线分开走),一组提供给CH375和单片机等,另一组提供给USB插座。

    

     ● 在USB插座前串接限流电阻或者电感,并在USB插座电源上并联储能用的电解电容。如果用电感也可以限制电流突变,防止电源电压突降,但是用电感在USB设备拔出后,容易在USB插座中产生过冲高压,所以必须接储能电容。(注意,在第一版CH375评估板的原理图中已经标出USB插座的限流电阻R1为1Ω,建议将其换为阻值5Ω的电阻或者保险电阻)

    

     ● 其他临时的解决方法(不推荐):①在USB设备与USB插座之间加入USB延长线。②在主电源上并联较大的储能电容,在U盘刚插入时提供足够的瞬时电能,减少对电源电压的影响。

    

     ● 参考目前计算机端的解决方法:USB端口的电源供给是通过保险电阻或者限流电感提供的,这些能够限制瞬时电流。对于计算机前面板的USB端口,由于本身通过一段较长的连接导线,自然减弱了对主电源的影响,而且计算机的5V电源功率很大,连续供电电流都在20A以上,所以不易受影响。

点击此处查看原文 >>

系统分类: 单片机   |    用户分类: 无分类    |    来源: 无分类

评论(0) | 阅读(378)
发表于:2008-4-21 22:11:42
标签:无标签

1

将公历转为农历的算法

static const unsigned short wMonthAdd[13]={0,31,59,90,120,151,181,212,243,273,304,334,365};
static const unsigned short wMonthAddy[13]={0,31,60,91,121,152,182,213,244,274,305,335,366};

static const unsigned long wNongliData[99]={/*农历数据*/
0x41A95,0x00D4A,0x00DA5,0x20B55,0x0056A,0x7155B,0x0025D,0x0092D,0x5192B,0x00A95,
0x00B4A,0x416AA,0x00AD5,0x90AB5,0x004BA,0x00A5B,0x60A57,0x0052B,0x00A93,0x40E95,
0x006AA,0x00AD5,0x209B5,0x004B6,0x612AE,0x00A4E,0x00D26,0x51D26,0x00D53,0x005AA,
0x30D6A,0x0096D,0xB095D,0x004AD,0x00A4D,0x61A4B,0x00D25,0x00D52,0x51B54,0x00B5A,
0x0056D,0x2095B,0x0049B,0x71497,0x00A4B,0x00AA5,0x516A5,0x006D2,0x00ADA,0x30AB6,
0x00937,0x8092F,0x00497,0x0064B,0x60D4A,0x00EA5,0x006B2,0x4156C,0x00AAE,0x0092E,
0x3192E,0x00C96,0x71A95,0x00D4A,0x00DA5,0x50B55,0x0056A,0x00A6D,0x40A5D,0x0052D,
0x8152B,0x00A95,0x00B4A,0x616AA,0x00AD5,0x0055A,0x414BA,0x00A5B,0x0052B,0x31527,
0x00693,0x70E53,0x006AA,0x00AD5,0x509B5,0x004B6,0x00A57,0x40A4E,0x00D26,0x81D26,
0x00D52,0x00DAA,0x60D6A,0x0056D,0x004AE,0x4149D,0x00A4D,0x00D15,0x21B25};

typedef struct
{
    int     day;
    int     month;
    int     year;
} CLK_DATE_T;

CLK_DATE_T GetOldDay(CLK_DATE_T pSt)                   /*公历转换成农历*/
{
static int wCurYear,wCurMonth,wCurDay;
static int nIsEnd,m,k,n,i,nBit;
static long nTheDate;
CLK_DATE_T OldDay;
int y;
wCurYear = pSt.year;
wCurMonth = pSt.month;
wCurDay   = pSt.day;
y=wCurYear - 2001;

/*计算该天到2001年正月初一有多少天*/
nTheDate =(y<<8)+(y<<6)+(y<<5)+(y<<3)+(y<<2)+y + (y>>2) + wCurDay + wMonthAdd[wCurMonth - 1] - 23;
if((!(wCurYear & 0x0003)) && (wCurMonth > 2))
nTheDate++;
nIsEnd = 0;
m      = 0;
while(nIsEnd != 1){
     if(wNongliData[m] < 4095) k = 11;
   else k = 12;
    n = k;
     while(n>=0){
           nBit = wNongliData[m];
           for(i=1;i<n+1;i++) nBit = (nBit>>1);
           nBit = (nBit & 0x0001);
           if (nTheDate <= (29 + nBit))
     {
          nIsEnd = 1;
          break;
        }
           nTheDate = nTheDate - 29 - nBit;
          n--;
          }
     if(nIsEnd) break;
     m++;
      }
wCurYear = 2001 + m;
wCurMonth = k - n + 1;
wCurDay   = nTheDate;

y=wNongliData[m] / 65536 + 1;                   /*计算该年闰月的月份+1*/

if (k == 12){

if (wCurMonth == y)
      wCurMonth = 1 - wCurMonth;
else if (wCurMonth > y)
      wCurMonth = wCurMonth - 1;
}
OldDay.year =wCurYear;
OldDay.month=wCurMonth;
OldDay.day =wCurDay;
return OldDay;

点击此处查看原文 >>

系统分类: 单片机   |    用户分类: 无分类    |    来源: 无分类

评论(0) | 阅读(207)
发表于:2008-4-17 21:08:57
标签:无标签

3

FM12864万年历制作成功

经过两周多的努力,我的12864万年历终于制作成功了,我的这个万年历具有语音播报时刻,带农历等功能.下一步打算再加上闹铃功能.

点击此处查看原文 >>

系统分类: 单片机   |    用户分类: 无分类    |    来源: 无分类

评论(12) | 阅读(1078)
总共 , 当前 /