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引脚分配

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

    关注

    6035

    文章

    44554

    浏览量

    634635
  • Holtek
    +关注

    关注

    8

    文章

    167

    浏览量

    66587
收藏 人收藏

    评论

    相关推荐

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

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

    基于HOLTEK单片机的智能车

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

    合泰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单片机是盛群半导体开发研制,其为国内专业微控制器IC设计领导厂商,营业范围主要包括微控制器IC及其周边组件之设计、研发与销售。自1998年成立以来,公司不断致力于新产品的研发及技术的创新
    发表于 10-13 16:55 1.2w次阅读
    <b class='flag-5'>holtek</b><b class='flag-5'>单片机</b>图文全面详解

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

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

    单片机什么特点_为什么要学习单片机

    当今社会,应用单片机的产品已经渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的足迹。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等,这些都离不开
    发表于 11-14 14:53 1w次阅读

    HOLTEK单片机反汇编软件

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

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

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

    单片机特点是怎么的?什么的应用

    一块单片机芯片就是一台计算机。由于单片机的这种特殊结构形式,在某些应用领域中,他承担了大中型计算机和通用的卫星计算机无法完成的一些工作。使其具有很多显著的优点和特点,因此在各个领域中得到了迅猛的发展。
    发表于 07-23 16:15 2次下载
    <b class='flag-5'>单片机</b>的<b class='flag-5'>特点</b>是怎么<b class='flag-5'>样</b>的?<b class='flag-5'>有</b>什么<b class='flag-5'>样</b>的应用

    HOLTEK新推出移动电源Flash单片机

    互补式PWM实现充放电管理,可将电池剩余容量等使用参数上传至主机,适合共享移动电源产品需求。 BP45F4NB/BP45FH4NB 移动电源Flash单片机 该系列单片机是一款具有8 位高性能精简指令
    的头像 发表于 02-19 14:25 2365次阅读

    合泰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 68次下载