SC95F8767的学习——新工程的建立
最近忙于新工作了,所以这里就出现了8位的单片机的研究学习了。是赛元的单片机sc95f8767,基于增强型的高速1T 8051内核的工业级、带触控功能的 Flash 微控制器,看起来主要是具备了触控功能了。
这里就开始了学习之旅了。
在使用keil之前需要安装一个插件SOC_KEIL_Setuop
通过网盘分享的文件:cs95f8767
链接: https://pan.baidu.com/s/1cCNhAWmk1IBErYyMmJhdyQ?pwd=11vj 提取码: 11vj,
安装完这个插件之后就可以在后面的工程中找到这个芯片型号并开发了。
之后就是新建工程了。keil的新建工程就不赘述了。
在选择芯片的时候可以发现,在选项中多了一个SOC 8051 Devices,这个就是刚才安装的插件也就是赛元的MCU。
这里就是工程新建了完成,之后就是编程了。当然我还没正式编程,就是学习了程序呢。跟之前学习的stm32有一定的区别。我倒是看到了,拿到的程序基本上是基于寄存器的操作,怎么说呢,之前学stm32的时候只是去学习了库函数,这里拿到手的是寄存器,看起来还真不算熟悉,加上本来我就是编程弱项,所以需要好好学习了。
跟我们之前学习的stm32基本上一样,不过要简单很多不需要添加库吧。
我们先建个灯程序吧。基本上一样main.c文件。
但这里有一个警告,这个警告是找不到头文件路径,所以还需要添加头文件路径,这个路径就是一开始的插件安装路径,需要添加对应头文件路径进来。我也在学习。
需要加载上面安装SOC_KEIL_Setuop的地址,我的是C:\Keil_v5\C51\SOC_KEIL_Setup\INC\SC95F876x
OK了。我们这里假设是高电平点亮LED灯,所以用到了I/O端口的寄存器
在单片机的资料里面是这些。
SC95F876x_C.H文件里面可找到这些,我们对p00口进行配置。
void Sys_Init(void) //LED灯初始化
{
P0CON |= 0X01; //0000 0001
P0PH &= ~0X01; //0000 0001
}
延时函数:
void Delay(void) //简单软件延时
{
unsigned int i=70,j=250;
while(i--)
while(j--);
}
主函数中初始化LED灯,并不断循环闪烁
void main(void) //主函数
{
Sys_Init();
while(1)
{
P00 = 1;
Delay();
P00 = 0;
Delay();
}
}
这里就是1个灯的闪动代码了。
下载用到的是 SC LINK PRO了,因为还没进行下载我就先贴一贴流程吧。
配置keil界面:打开Keil 工程文件,点击快捷图标“Target Option", 在“Target Option”界面中选择“Debug"”, 点选“Use", 并从下列中选取“SOC 8051 Driver”,同时,勾选“Run to main()”, 如下图:
再点击“Utilities",在“Use Target Driver for Flash Programming”中选择“SOC 8051 Driver”,如下图:
在此界面再点击“Settings”, 进入“烧录 Option 信息界面”,如下图:
这个界面是配置烧录界面的,界面介绍:
1. 芯片选择:选择预烧录或仿真的IC名称。
2. 烧录设置:可选择进行的自动烧录,包括擦除,编程,校验等。
3. 烧录选项:根据需要设置的Code Option 选项。
4. 烧录区域:可选择APROM 或者 EEPROM区域进行操作。
5. 升级:用于库文件的升级。
6. 帮助:版本的相关信息。
这里就有之前研究过的crc校验了。当然这个不需要我们自己去编写就是了。
补:这是工作以后写的第一篇了。