STC8
一 时钟:
IRC:24MHZ;LSI:32.768KHZ;HSE:4~33MHZ,外设可分频
二 2种低功耗模式:
IDLE:1.3MA@6MHZ,外设可唤醒。
STOP:
三:ISP下载更新模式:无需专用仿真器
四:C51开发模式:
众多的寄存器:IO设置/中断设置/外设,引脚分时复用功能选择的功能切换寄存器。
五:串口的4个模式:
- 模式0:同步移位模式,TXD:为同步时钟;RXD为DATA_IO
- 模式1:8为可变波特率,常用模式,需要定时器提供波特率
- 模式2:9位固定波特率
- 模式3:9位可变波特率,主要用于多机控制SM2=1,多机控制下的地址匹配提供类似RS485的硬件地址自动匹配(地址寄存器和地址屏蔽寄存器(符合屏蔽要求的响应))
六:自动代码:
利用STC-ISP可以进行波特率计算,定时器计算,软件延时计算。
七:RTOS:
- Small RTOS/
- TINIUX :https://github.com/SenseRate/TINIUX.git具体可以参考《蹄牛操作系统TINIUX 简明教程》,参考http://www.51hei.com/bbs/dpj-108281-1.html 以codeblocks位IDE,移植后要修改:
在 OSPreset.h 文件中,把#include <mcs51/8052.h>调整为#include "stc8.h"
关于时间漂移: 使用了传统 51 定时器Timer0 的模式 1,具有 16 位宽,但无法自动重载,系统会自动 根据 ticks 频率设置 timer0 重载起点。此种定时器模式的优点是适用于大多数 51/52 等系列 的单片机,但是会导致系统时间漂移,可以用其它定时器或模式,有的增强型51可以自动加载;
关于裁剪:TINIUX 系统在启动时,处于挂起及休眠状态的任务或分配到 XRAM 空间,只有当前运行的任 务会分配到 RAM 空间。同时为了减少对 XRAM 空间的占用,推荐裁剪掉信号量、互斥锁、 timer、消息队列等功能模块,只启用系统内轻量级的同步信号与同步消息功能。
- keil自带的只有RTX51Tiny 和RTX51Full操作系统:
- Easy51RTOS:根据任务的重要程度排序,根据执行的频度周期调度http://www.51hei.com/bbs/dpj-113567-1.html
- https://www.freertos.org/portcygn.html 用在
Cygnal (Silicon Labs) 8051 Port
关于主频和系统心跳:SETOS_CPU_CLOCK_HZ/SETOS_TICK_RATE_HZ(默认=1000hz,对于主频不高的51单片机可以减小ticks)
STC8的更多相关文章
- STC8单片机波特率115200时乱码解决
最近开发一个STC8单片机(STC8H3K32S2)项目,需要通过传口与蓝牙模块通讯,波特率高于57600后STC接收时出现乱码,但发送时正常.当将stc8串口和蓝牙串口分别接USB转串口模块通讯正常 ...
- FUTABA 13-ST-84GINK + DS3231 时钟
收拾东西的时候又看到之前收拾的vfd相关的盒子,偶然又加的群,又买了两种屏试水. 大的买屏还送vfd变压器,这玩意卖的少,一个5块,不买血亏!不知道什么时候开始早已没有DIY是省钱这种观念了.草... ...
- STC8A8K64S4A12通过SPI接口操作基于ST7920的LCD12864液晶模块
文章地址:https://www.cnblogs.com/jqdy/p/12665430.html 1. 硬件连接 1.1 64引脚的STC8A8K64S4A12 使用的是最小核心板,所以引脚皆引出可 ...
- 如何发挥Visual Studio 2019强大的编辑功能轻松编辑Keil项目
本文地址:https://www.cnblogs.com/jqdy/p/12565161.html 习惯了VS的强大编辑功能,对Keil 5越来越深恶痛绝.查阅网络文章后按图索骥初步实现了VS编辑Ke ...
- STC8PROG - Linux下的 STC8G STC8H 烧录工具
STC8PROG - Linux下的 STC8G STC8H 烧录工具 动机 在Linux下用 VSCode + PlatformIO 做开发, 因为VSCode的界面字体代码提示, 以及自定义的类J ...
- PlatformIO手工升级stcgal到1.6版本
PlatformIO自带的stcgal版本为1.4, 这个版本只支持到STC15, 不支持STC8. 在使用PlatformIO内建的upload写入STC8A8K64S4A12时, 会提示不识别的协 ...
- STC8A,STC8G,STC8H系列的IRC内部振荡源频率调节
从STC15开始, 宏晶就在内置RC震荡源(内置时脉, 宏晶称之为IRC)这条路上越走越远. STC15这一代仅仅是"有", 精度和漂移差强人意. 从STC8开始对IRC的调节就越 ...
- STC8H开发(一): 在Keil5中配置和使用FwLib_STC8封装库(图文详解)
介绍 FwLib_STC8 是一个针对STC8G, STC8H系列MCU的C语言封装库, 适用于基于这些MCU的快速原型验证. 项目地址: Gitee FwLib_STC8 镜像地址: GitHub ...
- STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解)
目录 STC8H开发(一): 在Keil5中配置和使用FwLib_STC8封装库(图文详解) STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解) 前面 ...
随机推荐
- 【原】AMFObject数据格式详解
AMF AMF是Action Message Format(动作消息格式)的简写,它是一种二进制的数据格式.它的设计是为了把actionscript里面的数据(包括Object, Array, Boo ...
- 【vue store的使用方法】(this.$store.state this.$store.getters this.$store.dispatch this.$store.commit)
vue 页面文件 <template> <div> {{this.$store.state.count}}<br/> {{count}}<br/> {{ ...
- JarvisOJ - Writeup(5.31更新)
此篇用来记录我在jarivsOJ上的一些题解,只给解题思路,不放flag Misc 0x01 You Need Python(300) 题目有两个文件,一个py文件,另一个是经过编码的key 文件ke ...
- 95. 不同的二叉搜索树 II、96. 不同的二叉搜索树
95 Tg:递归 这题不能算DP吧,就是递归 一个问题:每次的树都要新建,不能共用一个根节点,否则下次遍历对根左右子树的改动会把已经放进结果数组中的树改掉.. class Solution: def ...
- 老生常谈--Java值传递和引用传递
起因 前两天面试被问到了这个问题,虽然之前老早就了解过这个问题,但是并没有深入了解,所以面试的时候一下子慌了,菜是原罪,今天菜鸡来补补基础知识. 其实这个问题一直是被讨论的,常见的三种说法就是,1,J ...
- Blocked Billboard II
前言 今天比赛真的状态不好(腐了一小会),导致差点爆0. 这个题解真的是在非常非常专注下写出来的,要不然真的心态崩. 刚换了域名,发现了美化脚本的bug,有点担心(汗-_-||). 题目 题目描述 奶 ...
- Multisim 如何调整编辑界面大小
1.option -> sheet properties 2.选择workspace
- 【音乐欣赏】《Wrong》 - Far Out / Emilia Ali
曲名:Wrong 作者:Far Out / Emilia Ali [00:16.03]Ride body on mine [00:18.07]Griping your waist as I was o ...
- ALSA driver--HW Buffer
当app在调用snd_pcm_writei时,alsa core将app传来的数据搬到HW buffer(即DMA buffer)中,alsa driver从HW buffer中读取数据传输到硬件播放 ...
- UVA 11464 偶数矩阵(递推 | 进制)
题目链接:https://vjudge.net/problem/UVA-11464 一道比较好的题目. 思路如下: 如果我们枚举每一个数字“变”还是“不变”,那么需要枚举$2^{255}$种情况,很显 ...