HC89S003F4开发板ASM&C混合编程 一.前言 在配套资料里有实现ASM&C混合编程的说明文档,这里来实现这个功能. 二.实现ASM&C混合编程 1.打开 Keil 工程后,点击打开 HC89S003F4.h 头文件,并将定义的sfr16 DPTR = 0x82;屏蔽或删除. 2.选中需要嵌入汇编的.C 文件,然后然后右击选择Options For File,在跳出的选项框中将 Generate Assembler SRC File以及Assemble SRC File勾选…
HC89S003F4开发板汇编指令 一.数据传递类指令 MOV.MOVC.MOVX 1.MOV,用于片内数据存储器中的数据传递指令中. 2.MOVC是与ROM之间的数据传送,而MOVX是与外部RAM数据传送: 3.MOV就是移动的意思,C就是Code,代码的意思,X就是eXternal,外部的意思 MOVC就是读代码存储器,MOVX就是读写外部存储器,即外部RAM : 4.MOVC是读取ROM中的数据,只能读不能写(一般来说主要是用来读取常量或常量表) MOVX是读写外部扩展的RAM和扩展的IO…
HC89S003F4开发板ASM写定时器1 一.实现过程 1.外部寄存器设置 扩展 XSFR 采用和 XRAM 同样的访问方式,使用 MOVX A, @DPTR 和 MOVX @DPTR ,A 来进行读写. WDTCCR EQU 0FEA0H CLR A MOV DPTR,#WDTCCR MOVX @DPTR,A ; 关闭看门狗 2.设置定时器1 定时器计算方法 公式: 65536 - ((1/1000) / (1/(Fosc / Timer分频系数))) Fosc=16000000,Timer…
HC89S003F4开发板建立汇编工程 选择编译文件 @选用开发板闪灯例程,将例程删除多余的注释,后面生成的文件会更直观. #define ALLOCATE_EXTERN #include "HC89S003F4.h" void Delay_ms(unsigned int fui_i) { unsigned int fui_j; for(;fui_i > 0;fui_i --) for(fui_j = 1596;fui_j > 0;fui_j --); } void mai…
HC89S003F4开发板调度器调试 一.前言 逛论坛看到有人给HC89做了调度器,调度部分直接操作堆栈的. 下载链接 下载下来调试看看. 二.用户代码 @实现效果 编译后led灯闪烁 #include "HC51SRTOS.h" #include "math.h" //#define LED_RED P0_0 // 将P20设置为绿灯 sbit LED_RED = P0^0; sbit LED_GREEN = P0^1; /******************定义…
HC89S003F4开发板端口消抖 一.前言 看到资料里有中断消抖的例子,因为以前项目里有遇到高频干扰频繁退出休眠的情况,所以好奇用这个配置能不能解决. 二.对demo进行修改 @实现效果 P01设置为下降沿中断,每进一次中断后唤醒掉电模式,LED1状态改变一次 void main() { /************************************系统初始化****************************************/ WDTCCR = 0x00; //关闭看…
HC89S003F4开发板crc校验 前言 第一次用有带crc的mcu 使用资料自带的demo @实现效果 通过PC向MCU发送5个8位数据,MCU返回CRC校验值 void main() { /************************************系统初始化****************************************/ WDTCCR = 0x00; //关闭看门狗 //本例程为方便测试关闭看门狗,实际使用中,建议客户打开看门狗,详见WDT复位例程 CLKS…
HC89S003F4开发板串口调试 使用资料自带的demo 主程序 /************************************系统初始化****************************************/ WDTCCR = 0x00; //关闭看门狗 //本例程为方便测试关闭看门狗,实际使用中,建议客户打开看门狗,详见WDT复位例程 CLKSWR = 0x51; //选择内部高频RC为系统时钟,内部高频RC 2分频,Fosc=16MHz CLKDIV = 0x01;…
HC89S003F4开发板环境搭建 一.概述 芯圣电子做活动,一个开发板只用一块钱,买过来玩玩.︿( ̄︶ ̄)︿ 全套资料可以在论坛或qq群里下载.总之先安装个环境先. 二.安装Keil C51 作为增强型的51单片机,那得要安装个Keil C51先. 因为之前使用stc单片机的缘故已经安装版本在V9以上,没安装的话可以到官网下载并依据官方教程进行IDE 和相应组件的安装和设置. 三.加入芯圣的插件 打开HC-LINK V3.0.8.0.exe并安装到Keil C51安装目录下,没有的话可以到 h…
开发平台 芯灵思Sinlinx A64 内存: 1GB 存储: 4GB 开发板详细参数 https://m.tb.cn/h.3wMaSKm 开发板交流群 641395230 Linux 内核定时器是内核用来控制在未来某个时间点(基于jiffies)调度执行某个函数的一种机制,其实现位于 <Linux/timer.h> 和 kernel/timer.c 文件中. 内核定时器的数据结构 struct timer_list { struct list_head entry; //双向链表元素list…