TM1629A芯片参考程序

合集下载

TM1629B LED驱动控制专用电路说明书

TM1629B LED驱动控制专用电路说明书

一、概述TM1629B是一种带键盘扫描接口的LED(发光二极管显示器)驱动控制专用IC,内部集成有MCU 数字接口、数据锁存器、LED驱动、键盘扫描等电路。

本产品质量可靠、稳定性好、抗干扰能力强。

主要适用于家电设备(智能热水器、微波炉、洗衣机、空调、电磁炉)、机顶盒、电子称、智能电表等数码管或LED显示设备。

二、特性说明•采用CMOS工艺•••••••••三、四、管脚说明五、指令说明:指令用来设置显示模式和LED驱动器的状态。

在STB下降沿后由DIN输入的第一个字节作为指令。

经过译码,取最高B7、B6两位比特位以区别不同的指令。

B7 B6 指令0 1 数据命令设置1 0 显示控制命令设置1 1 地址命令设置如果在指令或数据传输时STB被置为高电平,串行通讯被初始化,并且正在传送的指令或数据无效(之前传送的指令或数据保持有效)。

(1)(2)(3)地址命令设置:该指令用来设置显示寄存器的地址。

最多有效地址为16位(00H-0FH),如果地址设为10H或更高,数据被忽略,直到有效地址被设定。

上电时,地址默认设为00H。

,写▲注意:芯片显示寄存器在上电瞬间其内部保存的值可能是随机不确定的,此时客户直接发送开屏命令,将有可能出现显示乱码。

所以我司建议客户对显示寄存器进行一次上电清零操作,即上电后向16位显存地址(00H-0FH)中全部写入数据0x00。

七、显示:1、驱动共阴数码管:图(8)图8给出共阳极数码管的连接示意图,如果让该数码管显示“0”,需要向地址单元00H(GRID1)、02H(GRID2)、04H(GRID3)、06H(GRID4)、08H(GRID5)、0AH(GRID6)里面分别写数据01H,其余的地址0CH(GRID7)、 0EH(GRID8)单元全部写数据00H。

每一个SEG1-SEG8对应的数据如下表格。

▲注意:1、TM1629B最多可以读4个字节,不允许多读。

2、读数据字节只能按顺序从BYTE1-BYTE4读取,不可跨字节读。

TM1628规格书

TM1628规格书

时钟输入 在上升沿输入串行数据,下降沿输出数据。
键扫数据输入 输入该脚的数据在显示周期结束后被锁存。
输出(段) 段输出(也用作键扫描),P管开漏输出。
输出(位) 位输出,N管开漏输出。
SEG12/GRID7 ~ 输出(段/位) 段/位复用输出。
SEG14/GRID5
VDD
逻辑电源 5V±10%
VSS
三、 管脚定义:
NC 1 DIO 2 CLK 3 STB 4
K1 5 K2 6 VDD 7 SEG1/KS1 8 SEG2/KS2 9 SEG3/KS3 10 SEG4/KS4 11 SEG5/KS5 12 SEG6/KS6 13 SEG7/KS7 14
SOP28
TM1628
(TOP VIEW)
28 GND 27 GRID1 26 GRID2 25 GND 24 GRID3 23 GRID4 22 GND 21 VDD 20 SEG14/GRID5 19 SEG13/GRID6 18 SEG12/GRID7 17 SEG10/KS10 16 SEG9/KS9 15 SEG8/KS8
九、 显示和按键:
(1) 显示:
1、驱动共阴数码管: SEG1
1
SEG2 1
SEG3 1
SEG4 1
SEG5 1
SEG6 1
GRID1
SEG1 SEG2 SEG3 SEG4 SEG5 SEG6 SEG7
A DPY Ba
Cf D
g
b
Ee
c
Fd
G [LEDgn]
GRID1
SEG7 1
图(7) 图(7)给出共阴数码管的连接示意图,如果让该数码管显示“0”,则需要在GRID1为低电平时 置SEG1,SEG2,SEG3,SEG4,SEG5,SEG6为高电平,置SEG7为低电平,查看图(2)显示地址表格, 只需在00H地址单元写数据3FH就可以让数码管显示“0”。

中微爱芯AIP1629A LED驱动控制专用电路说明书

中微爱芯AIP1629A LED驱动控制专用电路说明书

江苏省无锡市蠡园经济开发区滴翠路100号9栋2层 第 1 页 共 13 页http://www.i-core. cn 邮编:214072 版本:2011-12-A1AIP1629ALED驱动控制专用电路产品说明书说明书发行履历:版本 发行时间 新制/修订内容2011-12-A1 2011-12新制深圳富瑞世嘉 中微爱芯一级代理手机(微信):13530167943网 址:www.forchip.cn1、概 述AIP1629A 是一块LED 驱动专用电路,内置MCU 数字接口、数据锁存器等电路。

主要应用于冰箱、空调 、家庭影院等产品显示屏的驱动控制。

其主要特点如下: ● 采用功率CMOS 工艺 ● 显示模式:16段×8位● 辉度调节电路(占空比8级可调) ● 串行接口(CLK 、DIO 、STB ) ● 内置RC 振荡(400KHz±5%)● 内置上电复位电路 ● 封装形式:SOP322、功能框图及引脚说明2.1、引脚排列图图1、引脚排列图江苏省无锡市蠡园经济开发区滴翠路100号9栋2层 第 2 页 共 13 页http://www.i-core. cn 邮编:214072 版本:2011-12-A1深圳富瑞世嘉 中微爱芯一级代理手机(微信):13530167943网 址:www.forchip.cn2.3、引脚说明引脚 符 号引脚名称功 能1、2、4、5、28、29、31、32GRID1~GRID8 输出(位)位输出, N 管开漏输出。

7 DIO 数据输入 在时钟上升沿输入串行数据, 从低位开始。

8 CLK时钟输入 在时钟上升沿输入串行数据9 STB 片选 在上升或下降沿初始化串行接口, 随后等待接收指令。

STB 为低后的第一个字节作为指令,当处理指令时,当前其它处理被终止。

当STB 为高时,CLK 被忽略。

3、6、30 VSS逻辑地接系统地 10、27VDD逻辑电源5V±10%11~26 SEG1~SEG16输出(段)段输出, P 管开漏输出。

AIP1629系列 LED显示驱动芯片

AIP1629系列 LED显示驱动芯片

AiP1629A3-line Serial Interface/Common Cathode16Seg*8GridLED Controller/DriverProduct Specification1、General DescriptionAiP1629A is an LED Controller driven on a 1/8 duty factor.16segment output lines,8 grid output lines, one display memory, control circuit are all incorporated into a single chip to build a highly reliable peripheral device for a single chip microcomputer. Serial data is fed to AiP1629A via a three-line serial interface. Housed in a 32 pins SOP package, AiP1629A pin assignments and application circuit are optimized for easy PCB Layout and cost saving advantages.Features:CMOS technologydisplay modes(16 segment*8 grid)8-step dimming circuitrySerial interface for clock, data input, strobe pinsBuilt-in RC oscillator: (400KHz±5%)Available in 32 pins, SOP2、Block Diagram And Pin Description2.1、Pin Configurations2.2、Pin DescriptionPin No. Pin NameDescription 1、2、4、5、28、GRID1~Grid Output Pins29、31、32 GRID87 DIO8 CLKData input PinThis pin inputs serial data at the rising edge of the shift clock(starting from the lower bit)Clock input Pin .This pin reads serial data at the rising edge andoutputs data at the falling edge.9 STBSerial Interface Strobe PinThe data input after the STB has fallen is processed as acommand. When this pin is “HIGH”, CLK is ignored.3、6、30 VSS Ground Pin10、27 VDD Power Supply11~26 SEG1~SEG16 Segment Output Pins3、Electrical Parameter3.1、Absolute Maximum Ratings(Tamb=25℃, All voltage referenced to Vss, unless otherwise specified)Characteristic Symbol Conditions Value Unit Supply Voltage VDD -0.5~7.0 V Input Voltage V I -0.5~VDD+0.5 VDrive output current I O1 -50 mAI O2 +200 mA Power Dissipation P D 400 mW Operating Temperature T amb -40~+80 ℃torage Temperature T stg -65~+150 ℃Soldering Temperature T L 10s 250 ℃3.2、Recommended Operating Range(Ta= -20℃~+70℃,GND=0V)Parameter Symbol Min. Typ. Max. Unit Logic supply voltage V DD 3 5 5.5 VHigh-level input voltage V IH 0.7V DD - V DD VLow-level input voltage V IL 0 - 0.3V DD V3.3、Electrical Characteristics3.3.1 DC Characteristics (Tamb=25 C , VDD=4.5~5.5V, unless otherwise specified)Parameter Symbol Conditions Min. Typ. Max. Unit High-level output I OH1 SEG1~SEG16,V o=VDD -2V -20 -25 -40 mA current I OH2 SEG1~SEG16,V o= VDD-3V -20 -30 -50 mA3/ 13Low-level outputcurrent I OL1 GRID1~GRID8,Vo=0.3V 80 140 -mALow-level output current Segment Idout VO = 0.4V,dout 4 --mAHigh-level output Itolsg VO = VDD–3V,SEG1~SEG16 -- 5 % current toleranceInput leakagecurrent II VI=VDD/VSS --±1 µA High-level inputvoltage V IH CLK,DIO, STB 0.7VDD --V Low-level inputvoltage V IL CLK,DIO, STB --0.3VDD V Hysteresis Voltage V H CLK,DIO, STB -0.35 -V Dynamic currentdissipation IDDdyn No load , display off -- 5 mA3.3.2 AC Characteristics (Tamb=25 C , VDD=4.5~5.5V, unless otherwise specified)Parameter Symbol Conditions Min Typ Max Unit Oscillationf OSC - 400 - KHz frequencyPropagation t PLZ CLK→DIO - - 300 ns delay t PZL CL=15pF, R L=10KΩ- - 100 nsSeg1/KS1~T TZH1 - - 2 us Rise Time CL=300pF Seg8/KS8T TZH2Grid1~Grid8 - - 0.5usFall Time T THZ CL=300pF、Segn、Gridn - - 120us Maximum clockFmax Duty=50% 1 - - MHz frequencyInputC I - - - 15 pF capacitance3.3.3 Timing Characteristics(Ta= -20℃~+70℃,V DD=4.5V~5.5V)Parameter Symbol Conditions Min Typ Max Unit C lock pulse width PWCLK - 400 - - ns STB pulse width PWSTB - 1 - - μs S et-up time for data t SETUP - 100 - - ns H old time for data t HOLD - 100 - - ns Propagation delayt CLK STB CLK↑→STB↑ 1 - - μs CLK to STBWait time t WAIT CLK↑→CLK↓ 1 - - μs4、Function Description4.1、Display mode AND RAM addressData transmitted from an external device to AiP1629A via the serial interface are stored in the Display RAM and are assigned addresses. The RAM addresses of AiP1629A are given below in 8 bits unit.xxHL(low 4 bit) xxHU(high 4 bit) xxHL(low 4 bit) xxHU(high 4 bit)B0 B1 B2 B3 B4 B5 B6 B7 B0 B1 B2 B3 B4 B5 B6 B7 00HL 00HU 01HL 01HU GR102HL 02HU 03HL 03HU GR204HL 04HU 05HL 05HU GR306HL 06HU 07HL 07HU GR408HL 08HU 09HL 09HU GR50AHL 0AHU 0BHL 0BHU GR60CHL 0CHU 0DHL 0DHU GR70EHL 0EHU 0FHL 0FHU GR8 NOTE:when power up, first transfer data to RAM, and then setup display on.4.2、Commands DescriptionA command is the first byte (b0 to b7) inputted to AiP1629A via the DIO Pin after STB Pin has changed from HIGH to LOW State. Bit 7、bit 6 used to distinguish different instruction.B7 B6 Commands0 1 Data setting commands1 0 Display control commands1 1 Address setting commandsWhen input command, the STB can be set “1”,serial communication initialization, input command are invalid instruction.4.2.1、Data setting commandsThe Data Setting Commands executes the Data Write or Data Read Modes for AiP1629A,B1,B0can not set 01 or 11 or 10.B7 B6 B5 B4 B3 B2 B1 B0 Function Description0 1 XX 0 0 SET write write0 1 0 Auto increaseAddress increase0 1 1 Fixed address0 1 0 Normal modeTEST mode0 1 1 Test mode4.2.2、ADDRESS SETTING COMMANDSAddress Setting Commands are used to set the address of the display memory. The address is considered valid if it has a value of 00H to 0FH. If the address is set to 0FH or higher, the data is ignored until a valid4.3、Serial Communication FormatReceive 1 bit data all in rising of the clockWrite data time:4.4、DisplayCommon-cathode LED driverYou can write data”3F”in“00”address to set the digital tube display “0”Common-anode LED driverYou can write data ”01” in “00,02,04,06,08,0a” address and other address write “00” to set the digital tube display “0”.SEG8 SEG7 SEG6 SEG5 SEG4 SEG3 SEG2 SEG10 0 0 0 0 0 0 1 00H0 0 0 0 0 0 0 1 02H0 0 0 0 0 0 0 1 04H0 0 0 0 0 0 0 1 06H0 0 0 0 0 0 0 1 08H0 0 0 0 0 0 0 1 0AH0 0 0 0 0 0 0 0 0CHB7 B6 B5 B4 B3 B2 B1 B0Note: SEGn p-channel, open drain output, GRIDn N-channel, open drain output. when using, SEGn connect to anode of LED, GRIDn connect to cathode of LED.4.5、The serial data transfer in the applications4.5.1、Address Increasing ModeDisplay memory is updated by incrementing addresses. Please refer to the following diagram.where:Command 1: Data setting commandCommand 2: Address settingcommandData 1 to n: Transfer display data (16bytes max.)Command 3: Display control command4.5.2、Fixing AddressThe following diagram shows the waveforms when updating specific addresses.where:Command 1:Data setting commandCommand 2:Address setting commandData 1 : display dataCommand 3:Address settingcommand Data 2 : display data。

TM1628规格书

TM1628规格书
GRID5 1
GRID6 1
ቤተ መጻሕፍቲ ባይዱGRID7 1
SEG1
GRID1 GRID2 GRID3 GRID4 GRID5 GRID6 GRID7
图(8)
A DPY
B
a
Cf
b
Dg
Ee
c
Fd
G [LEDgn]
SEG1
图(8)给出共阳数码管的连接示意图,如果让该数码管显示“0”,则需要在GRID1,GRID2, GRID3,GRID4,GRID5,GRID6为低电平的时置SEG1为高电平,在GRID7为低电平的时置SEG1为低电 平。要向地址单元00H,02H,04H,06H,08H,0AH里面分别写数据01H,其余的地址单元全部写数 据00H。
七、 指令说明:
指令用来设置显示模式和LED驱动器的状态。 在STB下降沿后由DIO输入的第一个字节作为一条指令。经过译码,以最高两个比特位B7、B6区 别不同的指令。
B7
B6
0
0
0
1
1
0
1
1
指令 显示模式设置命令 数据读写设置命令
显示控制命令 地址设置命令
如果在指令或数据传输时STB被置为高电平,串行通讯被初始化,并且正在传送的指令或数据
键扫描由TM1628自动完成,不受用户控制,用户只需要按照时序读键值。完成一次键扫需 要2个显示周期,一个显示周期大概需要T=8×500us,在8ms先后按下了2个不同的按键,两次读到 的键值都是先按下的那个按键的键值。
按照图(9)用示波器观察SEG1/KS1和SEG2/KS2的输出键扫波形,见图(10)。
关显示 开显示
该指令用来设置显示的开/关和显示辉度。

-5-

TM1628详细应用手册

TM1628详细应用手册

0
0
0
0
0
0
0
无关项,填 0
0
0
0
1
1
0
1
1
4 位 13 段 5 位 12 段 6 位 11 段 7 位 10 段
该指令用来设置选择段和位的个数(4~7 位,10~13 段)。当指令执行时,显示被强制关闭。
要送显示控制命令开显示,原先显示的数据内容不会被改变,但当相同模式被设置时,则上述情况
并不发生。
SEG5 SEG4 SEG3 SEG2 SEG1
1
1
1
1
1
00H
B4
B3
B2
B1
B0
GRID1 1
GRID2 1
GRID3 1
GRID4 1
GRID5 1
GRID6 1
GRID7 1
SEG1
GRID1 GRID2 GRID3 GRID4 GRID5 GRID6 GRID7
图(8)
A DPY Ba
Cf D
输出(段/位) 段/位复用输出
逻辑电源 逻辑地
空脚
5V±10% 接系统地 内部未连线
▲ 注意:DIO口输出数据时为N管开漏输出,在读键的时候需要外接1K-10K的上拉电阻。本公司推
荐10K的上拉电阻。DIO在时钟的下降沿控制N管的动作,此时读数时不稳定,你可以参考图(6), 在时钟的上升沿读数才时稳定。
SEG8
SEG5
X
XX
xxHL(低四位)
B0 B1 B2 B3 00HL 02HL 04HL 06HL 08HL 0AHL 0CHL
xxHU(高四位)
B4 B5 B6 B7 00HU 02HU 04HU 06HU 08HU 0AHU 0CHU

tm1628

tm1628

LED 驱动控制专用电路一、 概述TM1628TM1628 是一种带键盘扫描接口的LED(发光二极管显示器)驱动控制专用电路,内 部集成有MCU 数字接口、数据锁存器、LED 高压驱动、键盘扫描等电路。

本产品性能优 良,质量可靠。

主要应用于VCR、VCD、DVD 及家庭影院等产品的显示屏驱动。

采用SOP28 的封装形式。

二、 特性说明• • • • • • • • 采用功率CMOS 工艺 多种显示模式(11 段×7 位 ~ 14 段×4 位) 键扫描(10×2) 辉度调节电路(占空比8 级可调) 串行接口(CLK,STB,DIO) 振荡方式:内置RC 振荡(450KHz+5%) 内置上电复位电路 封装形式:SOP28三、 管脚定义:1 2 3 4 5 6 7 8 9 10 11 12 13 14NC DIO CLK STB KEY1 KEY2 VDD SEG1/KS1 SEG2/KS2 SEG3/KS3 SEG4/KS4 SEG5/KS5 SEG6/KS6 SEG7/KS7GND GRID1 GRID2 GND GRID3 GRID4 GND VDD SEG14/GRID5 SEG13/GRID6 SEG12/GRID7 SEG10/KS10 SEG9/KS9 SEG8/KS828 27 26 25 24 23 22 21 20 19 18 17 16 15四、管脚功能定义:-1-LED 驱动控制专用电路符号 管脚名称 说明TM1628DIO数据输入/输出在时钟上升沿输入/输出串行数据,从低位开始。

输出为N-ch open drain 在上升或下降沿初始化串行接口,随后等待接收指 令。

STB 为低后的第一个字节作为指令,当处理指 令时, 当前其它处理被终止。

当STB 为高时, CLK 被 忽略 在上升沿读取串行数据,下降沿输出数据 输入该脚的数据在显示周期结束后被 锁存 段输出(也用作键扫描),p管开漏输出 位输出,N管开漏输出 段/位复用输出 5V±10% 接系统地 内部未连线STB片选CLK KEY1~KEY2 Seg1/KS1~ Seg10/KS10 Grid1~ Grid4 Seg12/Grid7 ~ Seg14/Grid5 VDD VSS NC时钟输入 键扫数据输入 输出(段) 输出(位) 输出(段/位) 逻辑电源 逻辑地 空脚▲ 注意:DIO口输出数据时为N管开漏输出,在读键的时候需要外接1K-10K的上拉电阻。

TM1629C_V1.1

TM1629C_V1.1
地址命令设置
如果在指令或数据传输时STB被置为高电平,串行通讯被初始化,并且正在传送的指令或数据
无效(之前传送的指令或数据保持有效)
7.1 数据命令设置:
该指令用来设置数据写和读,B1和B0位不允许设置01或11。
MSB
LSB
B7 B6 B5 B4 B3 B2 B1 B0
功能
说明
0
1
0
1
0
0
写数据到显示寄存器
显示关 显示开
八、串行数据传输格式:
读取和接收1个BIT都在时钟的上升沿操作。 8.1 数据接收(写数据)
CLK
12345678
DIO
B0 B1 B2 B3 B4 B5 B6 B7
STB
8.2 数据读取(读数据)
图(5)
CLK
1 2 `````` 8
DIO
B0 B1 `````` B7
B0 B1 B2 B3
0101
1 1 无关项, 0 1 1 0
11
填0
0111
11
1000
11
1001
11
1010
11
1011
11
1100
11
1101
11
1110
11
1111
00H 01H 02H 03H 04H 05H 06H 07H 08H 09H 0AH 0BH 0CH 0DH 0EH 0FH
©Titan Micro Electronics V1.1
CT
10K DIO
GND
图(1)
©Titan Micro Electronics V1.1
2
LED 驱动控制专用电路
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
tm1629.c
/* *版权信息: *文件名: TM1629A芯片参考程序 *当前版本: 1.0 *单片机型号: AT89S52 *开发环境: Keil uVision3 *晶震频率: 12M *作者: *完成日期: 2009-05-05 功能: 驱动共阴LED数码屏做时钟显示,可由按键控制时钟暂 停,开始,停止以及其它数码管显示0-9数字,
if(TIME_seconds == 10) 出。
//对时间数据进行处理,以免溢
{
TIME_seconds = 0;
seconds_2+=1;
}
if(seconds_2 == 6)
{
seconds_2 = 0;
sub_1 +=1;
}
if(sub_1 == 10)
{
sub_1 = 0;
sub_2 +=1;
show[14] = CODE[seconds_2]; //数码屏倒数第二个“8”字,
第6页
tm1629.c
show[13] = CODE[sub_1]|T_count;
show[12] = CODE[sub_2];
show[11] = CODE[shi_1]|T_count;
show[10] = CODE[shi_2];
//K1与
SEG6按键按下,key_FLAG1 = 0x00启动定时器,时间开始。
if((key[1]==0x08)){count7 = 0x01;TR0 = 0;key_FLAG1 = 0x02;} //当
K0与SEG6按键按下,key_FLAG1 = 0x02单独显示数字按键无效!
暂停。
if((key[1]==0x80))
uchar h; stb = 1; clk = 1; dio = 1; write(0x40);//写数据到显示寄存器,采用地址自动加一 stb = 1; write(0xc0);//显示寄存器的00H单元开始 for(h=0;h<16;h++) { write(show_led[h]);//给显示寄存器送数据, } stb=1; write(0x8b);//显示控制参数,点亮数码屏幕,亮度可以通过改变低 三位调节
}
if(sub_2 == 6)
{
sub_2 = 0;
shi_1 +=1;
}
if(shi_1 == 10)
{
shi_1 = 0;
shi_2 +=1;
}
if(shi_2 == 6)
//时钟每60小时自动清0
{
shi_2 = 0;
shi_1 = 0;
sub_2 = 0;
sub_1 = 0;
第7页
tm1629.c
{ key[count3]=read();
//读4BIT按键数据,
}
if((key_FLAG1 != 0x02))
{
if((key[0]==0x01)){key_LED= 0;key_FLAG1 = 0x01;show[key_COUNT1] = CODE[key_LED];} //K3与SEG1按键按 下,数码管显示数字0
数码管可以由按键调节显示不同数字
*/
#include<reg52.h>
#include<intrins.h>
#define nop _nop_();
#define uchar unsigned char
#define uint unsigned int
sbit stb =P1^0;
//定义片选通讯口
if((key[0]==0x08)){key_LED= 3;key_FLAG1 = 0x01;show[key_COUNT1] = CODE[key_LED];} //K0与SEG2按键按 下,数码管显示数字3。
if((key[0]==0x80)){key_LED= 4;key_FLAG1 = 0x01;show[key_COUNT1] = CODE[key_LED];} //K0与SEG3按键按 下,数码管显示数字4。
uchar CODE[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //0~9显示代码 uchar TIME_seconds,seconds_2,sub_1,sub_2,shi_1,shi_2; //时间寄存 器,依次从秒个位至小时十位 uchar TIME_count; //定时中断控制制位 uchar T_count; //时钟小数点闪 uchar count4; //保存按键控制对应的数码管闪 uchar key_FLAG1;//按键标志位 uchar key_COUNT1;//按键移动数动显示数据 uchar key_LED=0; //按键单独显示赋值寄存器
// K2与SEG7按键按下,控制数码
{
第5页
时间暂停。
tm1629.c
show[key_COUNT1] = count4; key_FLAG1 = 0x01;//key_FLAG1 = 0x00关闭定时器,
if((key_COUNT1==0)){ key_COUNT1 = 10;}
key_COUNT1 -= 1;
**********************************/
unsigned char read()
{
uchar d; stb = 0; //给有效的片选信号(片选信号是低电平有效) dio = 1; //将DIO置高,因为没有按键按下时,键值默认为00H, 此时为了与键值有区别
for(d=0;d<8;d++) {
if((key[0]==0x40)){key_LED= 5;key_FLAG1 = 0x01;show[key_COUNT1] = CODE[key_LED];} //K1与SEG3按键按 下,数码管显示数字5。
if((key[0]==0x20)){key_LED= 6;key_FLAG1 = 0x01;show[key_COUNT1] = CODE[key_LED];} //K2与SEG4按键按 下,数码管显示数字6。
sbit clk =P1^1;
//定义时钟通讯口
sbit dio =P1^2;
//定义数据输入/输出通讯口
bdata uchar y=0;//定义可以位寻址全局变量y
sbit y7 =y^7;
uchar show[16] = {0x76,0x7b,0x38,0x38,0x3f,0x40,0x40,0x40,0x40,0x40};//初始化显示“ HELLO”字符代码
// K1与SEG7按键按
{
show[key_COUNT1] = count4; key_FLAG1 = 0x01;//key_FLAG1 = 0x00关闭定时器, 时间暂停。
key_COUNT1 ++;
if((key_COUNT1 == 10)){ key_COUNT1 = 0;}
}
if((key[1] == 0x20)) 管左移一位
if((key[1]==0x02)){key_LED= 9;key_FLAG1 = 0x01;show[key_COUNT1] = CODE[key_LED];} //K2与SEG5按键按 下,数码管显示数字9
}
if((key[1]==0x04)){key_FLAG1= 0x00; count7 = 0;}
uchar count7;
第1页
tm1629.c
/********************************* 功能: TM1629写数据
**********************************/
void write(uchar wr_data)
{
uchar i;
stb =0; 效)
}
if((key_FLAG1 == 0x01)){ count4 = show[key_COUNT1];}
//
保存当前按键位显示数据
if((count7 != 0x01)){ key_FLAG1 = 0;}
}
/********************************** 定时中断函数入口
功能: 每50MS中断一次
T_count ^= 0x80;
}
}
/********************************* 时钟函数
功能: 处理时钟显示
*******************************பைடு நூலகம்**/
void TIME_show()
{
//sub_1 = sub_1|0x80;
//shi_1 = shi_1|0x80; show[15] = CODE[TIME_seconds];// 数码屏上最后一个“8”字,依次 下去
clk = 0;
第2页
tm1629.c
nop; if(dio==1)
{ y7 = 1;
} else
{ y7 = 0; } clk = 1; if(d!=7){y=(y>>1);} nop; nop; } return(y);
} /*********************************
TM1629控制指令 功能: 驱动LED屏做相应的显示 **********************************/ void xianshi(uchar show_led[16]) {
// K0与SEG7按键按下,
key_FLAG1 = 0x00启动定时器,时间开始。
{
key_FLAG1 = 0x00;
count7 = 0;
相关文档
最新文档