0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

holtek单片机怎么样_holtek单片机有什么特点

PoisonApple 来源:网络整理 2018-02-27 14:17 次阅读

holtek

盛群半导体为***省专业微控制器IC设计领导厂商,营业范围主要包括微控制器IC及其周边组件之设计、研发与销售。自1998年成立以来,公司不断致力于新产品的研发及技术的创新,加上对市场趋势的掌握,期能提供广大电子市场最具竞争力之IC产品。

holtek bs84c12A 单片机开发

开发环境搭建

编辑编译调试是官方的HT-IDE3000,仿真器用的Elink,单片机的程序用C开发,使用代理商提供的触摸按键库。(这些资料后面都整体好提供下载)。软件的安装什么就不说了,直接就讲怎么和自己的硬件连接,进行在线调试。

开发环境使用

关于IDE3000的使用,安装好后可以在软件的帮助部分,查看一些V3进行C语言编程的对应内容; ELink的话有个《Elink仿真器使用说明》,关键就是“”BS84C12A_20150807_LIBV413--V3“”这个软件包,后续的开发都在这个软件包的基础上进行(触摸按键调用这个软件包提供的库就方便实现按键功能),具体怎么使用这个软件包,可以看他对应的使用手册。

关于使用Elink在线仿真,要注意就是 要使用对应的支持在线调试的芯片, 比如选的BS84C12A 对应的仿真芯对应的EV芯片。

关于编程

使用上面提到的软件包进行编程,其实就是已经帮搭建好了框架,void USER_PROGRAM_INITIAL()这个函数里面就是硬件初始化,void USER_PROGRAM()函数就是单片机程序需要循环执行的内容。

自己开发过程中编程时候遇到的问题主要如下:

1,堆栈溢出。

解决,查数据手册可以知道,选的BS84C12A是硬件堆栈5层,调用的触摸按键库,它的手册上已经说明软件包占用了2层的堆栈,因此留给自己用的堆栈只有3层。比如的程序,自己使用定时器中断占用了一层,那么 USER_PROGRAM()之后,自己的代码只能再调用一层函数。 再进行函数调用的话,就会导致堆栈溢出而死机。

2,ROM不足

解决,优化代码功能开启来编译器选项中,同时关键的变量都带上volatile,相同功能的代码就复用起来,尽量合理用数组来减少代码量。后面自己发现,程序里面要是进行了乘法,乘以0.55,ROM的使用量居然多出8%,而且还容易堆栈溢出,所以尽量不要用乘法吧。

3,RAM不足

bank0是编译器自动分配的,bank1 ,bank2,好像是需要自己手动指定。 就是当编译器出错说RAM不足, 你就一些数组放到bank1中。下面就是程序中的定义方式 0X1B4, 0X1代表BANK1,B4代表地址,数据手册上有写bank1的地址是0x80~0XFF

static volatile unsigned int uiKeyTimeCnt[8] __attribute__ ((at(0x1b4))); //按键去抖动延时计数器

static volatile unsigned int uiKeyCtntyCnt[8] __attribute__ ((at(0x1c4))); //按键连续触发的间隔延时计数器

static volatile unsigned char ucKeyLock[8] __attribute__ ((at(0x1d4))); //按键触发后自锁的变量标志

holtek单片机是由盛群半导体设计开发,盛群半导体为国内专业微控制器IC设计领导厂商,营业范围主要包括微控制器IC及其周边组件之设计、研发与销售。自1998年成立以来,公司不断致力于新产品的研发及技术的创新,加上对市场趋势的掌握,期能提供广大电子市场最具竞争力之IC产品。产品范围包括:泛用型与专用型微控制器(MCU),除一般应用领域外,更涵盖语音、通讯、计算机外设、家电、医疗、车用及安全监控等各专业领域,并提供各种电源管理及非易失性内存等微控制器外围组件,提供客户更具竞争能力的完整解决方案。

holtek单片机—分类

(1) HT48系列 I/O 型( + LCD)

(2) HT49系列 I/O + LCD 型

(3) HT46系列 I/O+AD 型( + LCD)

(4) HT47系列 I/O+RC-F(AD)+LCD+IR型

(5) HT48xAx\HT49xAx系列 Remote (遙控器用)型

(6) HT95R2x\HT95R3x系列Phone( + LCD)

(7) HT45R3x\BS28xx\BS26xx系列 Touch型

(8) Flash 型(HT46Fxx\HT48Fxx\HT66Fxx\HT68Fxx)

(9) TIny Power 型(HT56R2x, HT56R6x, HT56R6xx )

(10) Keyboard/Mouse系列,USB Audio系列,

Voice/Music系列,VFD系列……。。

HOLTEK单片机—系统结构

holtek单片机怎么样_holtek单片机有什么特点

Holtek单片机的系统结构

holtek单片机怎么样_holtek单片机有什么特点

时序和流水线结构

holtek单片机怎么样_holtek单片机有什么特点

子程序调用流水线的情况

holtek单片机怎么样_holtek单片机有什么特点

程序计数器

lALU所提供的功能与其相关指令码如下:

算术运算 :ADD、ADDM、ADC、ADCM、SUB、SUBM、SBC、SBCM、DAA

逻辑运算 :AND、OR、XOR、ANDM、ORM、XORM、CPL、CPLA

移位 :RRA、RR、RRCA、RRC、RLA、RL、RLCA、RLC

增加和减少:INCA、INC、DECA、DEC

分支判断 :MP、SZ、SZA、SNZ、SIZ、SDZ、SIZA、SDZA、CALL、RET、RETI

holtek单片机怎么样_holtek单片机有什么特点

堆栈与堆栈指针/程序计数器

HOLTEK单片机—存储器(程序存储器/数据存储器)

holtek单片机怎么样_holtek单片机有什么特点

盛群半导体I/O型单片机程序存储器结构

第一部分是特殊功能寄存器,有固定的地址且与单片机的正确操作密切相关。大多特殊功能寄存器都可在过程控制下直接读取和写入,但有些被保留用于未来扩展功能而不开放。

第二部分通用数据存储器是留给用户使用的,都可在过程控制下进行读取和写入。

holtek单片机怎么样_holtek单片机有什么特点

数据存储器

holtek单片机怎么样_holtek单片机有什么特点

通用数据存储器的结构

holtek单片机怎么样_holtek单片机有什么特点

专用寄存器的结构

特殊功能寄存器:

间接寻址寄存器 – IAR, IAR0, IAR1

间接寻址指针 – MP, MP0, MP1

累加器 (数据存储器地址:05H)– ACC

程序计数器低字节寄存器(数据存储器地址:06H) – PCL

表格寄存器(数据存储器地址:07、08H) – TBLP, TBLH

看门狗定时寄存器(数据存储器地址:09H) – WDTS

状态寄存器(数据存储器地址:0AH) – STATUS

中断控制寄存器(数据存储器地址:0BH) – INTC

定时/计数器寄存器 (数据存储器地址:0CH~11H)

输入/输出端口和控制寄存器

HOLTEK单片机—基本I/O

holtek单片机怎么样_holtek单片机有什么特点

上图:输入/输出端口硬件图

上拉电阻(配置选项设置 or 软件设置)

唤醒功能(配置选项设置 or 软件设置)

输入/输出端口控制寄存器

外部中断输入

外部中断

外部中断是通过端口上由高到低的电平转换来触发,之后相应中断请求标志位(EIF;INTC的第4位)被置位。当中断允许,堆栈未满且外部中断产生时,会调用地址04H的子程序,中断请求标志位EIF将被清零,且EMI位将被清零来屏蔽其它中断。

holtek单片机怎么样_holtek单片机有什么特点

l中断控制寄存器(一个定时/计数器)

holtek单片机怎么样_holtek单片机有什么特点

中断控制寄存器(两个定时计数器)

holtek单片机怎么样_holtek单片机有什么特点

不同中断的允许位、请求标志优先级

注意:在图中,T0F和T1F中断请求标志位与ET0I和ET1I中断允许位提供给HT48R70A-1/ HT48C70-1和HT48R50A-1/HT48C50-1使用,因为它们拥有两个定时/计数器。HT48R10A-1/ HT48C10-1和HT48R30A-1/HT48C30-1只有一个定时/计数器,定时/计数器0代表唯一的定时/计数器TMR,拥有中断请求标志位TF和中断允许位ETI。

HOLTEK单片机—定时/计数器中断

当定时/计数器溢出,会置位定时/计数器中断请求标志位,定时/计数器中断发生。在只有一个定时/计数器的单片机中,此位是INTC寄存器的第5位即TF,而在有两个定时/计数器的单片机中,定时/计数器0中断请求标志位是INTC的第5位即T0F,而定时/计数器1中断请求标志位是INTC的第6位即T1F。当主中断位被打开、堆栈未满且相关内部中断允许位打开,定时/计数器溢出时会发生内部中断。对于只有一个定时/计数器的单片机将调用地址08H的子程序。对于有两个定时/计数器的单片机,定时/计数器0中断将调用地址08H的子程序,而定时/计数器1中断将调用地址0CH的子程序。内部中断发生时,中断请求标志位TF、T0F或T1F被清零,且EMI位将被清零来屏蔽其它中断 。

holtek单片机怎么样_holtek单片机有什么特点

中断优先级

注意:此表应用于HT48R70A-1/HT48C70-1和HT48R50A-1/HT48C50-1,它们拥有两个定时/计数器,即为TMR0和TMR1。而HT48R10A-1/HT48C10-1和HT48R30A-1/HT48C30-1只有一个定时/计数器,定时/计数器0代表唯一的定时/计数器,即TMR。

holtek单片机怎么样_holtek单片机有什么特点

8位定时/计数器结构

holtek单片机怎么样_holtek单片机有什么特点

16位定时/计数器结构

定时/计数器的相关寄存器(续)

定时/计数控制寄存器 – TMRC,TMR0C,TMR1C

配置定时/计数器输入时钟

定时/计数寄存器–TMR, TMR0, TMR0L/TMR0H, TMR1L/ TMR1H

定时器模式

事件计数模式

可编程分频器(PFD)和蜂鸣器的应用

TIMER应用举例:

TMR是向上计数的寄存器

l在定时或计数时,当计数到OFFH时,再來一个CLK,计数器就会溢出(在中断开启且堆栈未满时,就会发生TIMER中断),计数器重新装载初始值,并从此初始值开始重新计数。

寄存器TMR或者TMR0L/TMR0H写入初始值

控制寄存器TMRC设置工作模式、时钟、触发条件,开关。

holtek单片机怎么样_holtek单片机有什么特点

TMRC控制寄存器

holtek单片机怎么样_holtek单片机有什么特点

TIMER定时模式

TIMER定时模式时时间计算

(以上面程序为例)

条件: OSC : Crystal = 4 MHz

Timer source: system clock

计算每次发生中断的时间间隔T=?

PSC2 PSC1 PSC0 = 000

f INT = fsys/2 =2MHZ

t = 1/ f INT = 0.5us

T= (256-96)* t=160*0.5us= 80us

TIMER 计数模式

a) 將TMRC中 设置为

TM1 TM0 = 01定时器就工作于定时模式 ,计数模式和定时模式原理相同,只是计数器的时钟源选择不同。

b) 计数器的时钟源由芯片的

TMR腳输入。

c) TE= 0 上升沿计数 /1 下降沿计数

TIMER 脉宽測量模式

(a) TMRC中设置 TM1,TM0=11

TE= 0 脉宽下降沿开始计数/1 脉宽上升沿开始计数

TO=1 脉宽测量启动,測量完一次会被清0,再次測量必須重新设置此位

(b) 如果TO,TE=1, TMR腳上脉冲上升沿开始计数,下降沿停止计数。測量结果存放在TMR中。

编程注意事项

当定时/计数器运行在定时器模式时,定时器的时钟源是使用内部系统时钟或RTC,与单片机所有运算都能同步。在这个模式下,当定时器寄存器溢出时,单片机将产生一个内部中断信号,使程序进入相应的内部中断向量。对于脉冲宽度测量模式,计数器的时钟源也是使用内部系统时钟或RTC,但定时器只有在正确的逻辑条件出现在外部定时/计数器输入引脚时才执行动作。当这个外部事件没有和内部定时器时钟同步时,只有当下一个定时器时钟到达时,单片机才会看到这个外部事件,因此在测量值上可能有很小的差异,需要程序设计者在程序应用时加以注意。在定时器配置为外部事件计数模式时,它的时钟来源是外部事件,和内部系统时钟或者定时器时钟不同步。

holtek单片机—振荡器

l三种系统时钟可供选择:看门狗定时器也有多种时钟源选择,另外还有实时时钟RTC

l三种方法产生系统时钟:使用外部晶体/陶瓷振荡器、外部RC电路或是内部RC时钟源

holtek单片机怎么样_holtek单片机有什么特点

晶体/陶瓷振荡器

holtek单片机怎么样_holtek单片机有什么特点

外部RC振荡器

holtek单片机怎么样_holtek单片机有什么特点

三种振荡电路

RTC振荡器

如果选择RTC作为定时/计数器的时钟源,则即使单片机工作在暂停即HALT时,定时/计数器依然有效工作,当定时器溢出时,还会发出正常的内部中断信号,此信号使单片机从HALT状态下被唤醒,并且继续正常工作直到下一个“HALT”指令被执行。

看门狗定时振荡器

WDT振荡器是一种完全独立在芯片上自由动作的RC振荡器,它在5V条件下的周期时间典型值是65us周期,且不需外部的器件搭配。当单片机进入暂停模式时,系统时钟将停止动作,但WDT振荡器继续自由动作且保持看门狗有效。某些应用中为降低功耗,可通过掩膜选项来关闭WDT振荡器。

系统的暂停和唤醒

暂停模式是通过“HALT”指令实现且造成如下结果:

系统振荡器将被关闭

在RAM芯片和寄存器上的数据保持不变

假如WDT时钟源是来自WDT振荡器,WDT和WDT预分频器(Prescaler)将被清零然后再重新计数

所有输入/输出端口状态保持不变

PDF标志位被置位而TO标志位被清零

holtek单片机—看门狗定时器和节电模式

看门狗定时器用于程序防止单片机死机,或进入死循环。一般用在环境比较恶劣的情況下。

holtek单片机怎么样_holtek单片机有什么特点

看门狗定时器

holtek单片机怎么样_holtek单片机有什么特点

WDT预分频器

看门狗定时器的操作:

以HT48R30A-1为例

WDT的时钟源可选择:

a) WDTOSC(12Kz)

b) T1(system clock/4)

c) RTCOSC(32

看门狗清除:

方式一: CLR WDT

方式二: CLR WDT1…CLR WDT2

配置选项选择清除方式,必须在WDT计数器溢出之前清除,否则将发生WDT溢出Reset 系统。

配置选项:

holtek单片机怎么样_holtek单片机有什么特点

holtek单片机怎么样_holtek单片机有什么特点

基本电路参考/技术参数

holtek单片机怎么样_holtek单片机有什么特点

基本应用电路

HT48 I/O单片机技术参数

技术特性:高性能RISC结构、低功率完全静态CMOS设计

工作电压:在4MHz下,由2.2V到5.5V,在8MHz下,由3.3V到5.5V,

功率损耗:在5V/4MHz下,典型值为2 mA/1.5mA(Enhanced I/O)

不使用看门狗定时器和RTC时,3V下静态(standby)电流小于1uA

温度范围:工作温度--40-85度(工业规格),储存温度--50-125度

内核特性:

程序存储器

l1K×14 OTP/Mask ROM (HT48R10A-1/HT48C10-1)

l2K×14 OTP/Mask ROM (HT48R30A-1/HT48C30-1)

l4K×15 OTP/Mask ROM (HT48R50A-1/HT48C50-1)

l8K×16 OTP/Mask ROM (HT48R70A-1/HT48C70-1)

数据存储器

l64×8 SRAM (HT48R10A-1/HT48C10-1)

l96×8 SRAM (HT48R30A-1/HT48C30-1)

l160×8 SRAM (HT48R50A-1/HT48C50-1)

l224×8 SRAM (HT48R70A-1/HT48C70-1)

周边特性:

从8个到56个具有上拉功能的双向输入输出口

PA口具有唤醒功能

外部中断输入

事件计数输入

具有预分频器(Prescaler)及中断功能的定时器

看门狗定时器(WDT)

暂停与唤醒特性可以节省功耗

PFD/蜂鸣器驱动输出

芯片内置晶体及电阻电容振荡电路

具有低电压复位特性

32768Hz的实时时钟(RTC)功能

具有低电压复位(LVR)特性

具有烧录电路接口及程序代码保护功能

Mask版单片机适用于大量生产

提供高效的软硬件支持工具

表格读取功能

多层硬件堆栈

直接和间接数据寻址模式

位操作指令

63条强大的指令

大多数指令执行时间只需要一个指令周期

引脚分配:

holtek单片机怎么样_holtek单片机有什么特点

HT48R30A-1/HT48C30A-1引脚分配

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    5998

    文章

    43963

    浏览量

    620691
  • Holtek
    +关注

    关注

    8

    文章

    150

    浏览量

    66354
收藏 人收藏

    评论

    相关推荐

    HOLTEK系列IC——HT49R50资料

    解密等PHILIPS系列芯片解密是芯科技在单片机解密技术研究中解密技术较为成熟可靠的典型单片机系列,针对HOLTEK系列大部分典型单片机,我们均可以为客户提供高效优质的IC解密服务。 
    发表于 12-16 17:15

    HOLTEK单片机、ABOV单片机、复旦微电子EEPROM

    上海至秦电子是一家致力于单片机方案开发和电子元器件品牌代理(HOLTEK单片机、ABOV单片机、复旦微电子EEPROM)的专业公司。方案:电磁炉、智能加湿器、咖啡
    发表于 12-30 11:46

    合泰 松翰单片机代理

    、HT49R50、HT49RA0.1. 合泰单片机仿真器CICE48U000006A HOLTEK2. 合泰单片机仿真器CICE46F000007A HOLTEK3. 合泰
    发表于 05-28 09:30

    基于HOLTEK单片机的智能车

    基于HOLTEK单片机的智能车
    发表于 05-17 17:37

    带你认识单片机-单片机常用芯片简介

    .   PIC单片机:是MICROCHIP公司的产品,其突出的特点是体积小,功耗低,精简指令集,抗干扰性好,可靠性高,较强的模拟接口,代码保密性好,大部分芯片其兼容的FLASH程序
    发表于 05-31 15:40

    什么是单片机单片机哪些特点

    什么是单片机单片机哪些特点单片机的发展趋势如何?
    发表于 07-14 08:24

    合泰Holtek单片机入门 精选资料分享

    初次接触HT66F018初识合泰环境安装软件安装资料下载HT66F018介绍CPU 特性周边特性综合初识合泰由于项目需要,首次使用合泰Holtek的一款单片机HT66F018。合泰的单片机网上资料
    发表于 07-21 08:32

    如何搭建Holtek合泰单片机的环境?

    如何搭建Holtek合泰单片机的环境?
    发表于 01-27 07:47

    HOLTEK单片机反汇编软件

    HOLTEK单片机反汇编软件 1、自动把程序和数据区分开来 2、大片为0的数据,自动忽略(程序的NOP不会忽略) 3、支持符号引入(尚未优化,速度较慢),设置格式见Symbol.ini,
    发表于 10-12 10:26 188次下载

    基于移动电源的HOLTEK三合一的单片机程序

    本文档提供移动电源项目使用的HOLTEK三合一移动电源单片机程序,做移动电源的可以参考,比较有学习价值。
    发表于 08-30 09:35 10次下载

    HOLTEK单片机反汇编软件

    HOLTEK单片机反汇编软件
    发表于 12-13 14:02 38次下载

    Holtek 8位单片机开发环境的介绍使用说明

    本文档的主要内容详细介绍的是Holtek 8位单片机开发环境的介绍使用说明包括了:1.开发环境介绍,2.建立第一个工程
    发表于 04-01 08:00 8次下载
    <b class='flag-5'>Holtek</b> 8位<b class='flag-5'>单片机</b>开发环境的介绍使用说明

    合泰Holtek单片机入门

    初次接触HT66F018初识合泰环境安装软件安装资料下载HT66F018介绍CPU 特性周边特性综合初识合泰由于项目需要,首次使用合泰Holtek的一款单片机HT66F018。合泰的单片机网上资料
    发表于 11-13 15:06 30次下载
    合泰<b class='flag-5'>Holtek</b><b class='flag-5'>单片机</b>入门

    Holtek合泰单片机 《一》 从环境搭建到点亮一个LED

    Holtek合泰单片机 《一》 从环境搭建到点亮一个LED
    发表于 12-02 19:36 19次下载
    <b class='flag-5'>Holtek</b>合泰<b class='flag-5'>单片机</b> 《一》 从环境搭建到点亮一个LED

    合泰HOLTEK单片机反汇编软件(含使用说明书)

    合泰HOLTEK单片机反汇编软件(含使用说明书)
    发表于 02-11 11:37 46次下载