9260内部有5个内部计数器,分别为TIMER_CLOCK1 --- TIMER_CLOCK5。通过这5个时钟可以为各种内部设备提供时钟基准。

其中,红外发射38K方波,是通过CLOCK1计数产生。

配置寄存器如下

//选择TC通道

__sys_reg(AT91_PMC_PCER) = 1 << AT91SAM9260_ID_TC1;

//设置对外接口

at91_set_A_periph(AT91_PIN_PC7, 0);

TC_CCR(tc1_io_base) = AT91_TC_CLKDIS;

TC_CMR(tc1_io_base) =

//挑选时钟源

AT91_TC_TIMER_CLOCK1

//选择waveform

| AT91_TC_WAVESEL_UP_AUTO

//选择RC比较器是对外接口清零

| AT91_TC_BCPC_CLEAR

//选择RB比较器是对外接口置位

| AT91_TC_BCPB_SET

//设置为waveform

| AT91_TC_WAVE

//the last num set the port tiob to output

| AT91_TC_EEVT_XC0;

TC_IDR(tc1_io_base) = ~0;

//确定RC计数器的值

TC_RC(tc1_io_base) = MAIN_CLK / 2 / 38000;

//确定RB计数器的值

TC_RB(tc1_io_base) = MAIN_CLK / 2 / 76000;

//时钟使能

TC_CCR(tc1_io_base) = AT91_TC_CLKEN | AT91_TC_SWTRG;

因此,方波的频率多少取决于MAIN_CLK,即系统允许的频率。

2.  25K方波的产生

1.  之前的驱动程序采取把系统允许频率MCK写死的方式,进行处理,即MCK=99328000Hz,算出的RC=1306, RB=RC/2。NOTE:占空比1/2

2.  因此,如果核心板是降频处理的话,主频是665600000。如果搭配之前的驱动,即RC= 2*RB = 1306,算出的输出的方波即25KHz。

3.  如果更新最新的驱动,MCK是根据系统的寄存器配置动态生成的话,驱动会自动调整RB RC 值,以匹配38K PWM波的产生。

3.  附录A

TC Channel mode register:

Meaning:

AT91_TC_TIMER_CLOCK1 |

TIMER_CLOCK1 =  MCK/2

AT91_TC_WAVESEL_UP_AUTO |  2<<13

WAVSEL = 10

AT91_TC_BCPC_CLEAR | 2<<26

RC Compare Effect on TIOB = CLEAR

AT91_TC_BCPB_SET |    1<<24

RB Compare Effect on TIOB = SET

AT91_TC_WAVE |  1<<15

WAVEFORM

AT91_TC_EEVT_XC0   1<<10

TIOB  output

Example:

Interpretation:

转载于:https://www.cnblogs.com/zym0805/p/5949494.html

AT91SAM9260EK-38k产生原理相关推荐

  1. 你知道遥控器的通信原理吗?

    纯硬件模拟的红外通信装置 顾名思义他是通过红外线进行通信的 文章目录 前言 一.总体框架 二.滤波器设计 1.运用工具软件设计事半功倍! 2.PWM产生模块 前言 红外光通信装置利用红外发光管和红外光 ...

  2. 常见的推荐算法原理介绍

    常见的推荐算法原理介绍,随着互联网的发展短视频运营越来越精准化,我们身边常见的抖音.火山小视频等软件让你刷的停不下来,这些软件会根据你的浏览行为推荐你感兴趣的相关内容,这就用到了很多推荐算法在里面. ...

  3. redis原理之快照(rdb)原理

    redis 的持久化有两种 一种就是rdb 另一种就是 aof 首先 看看rdb的配置,在redis.conf中 (yum安装 的话默认在 /etc/redis.conf)中 save 900 1 s ...

  4. 9.牛批了 Android 2022高级 资深面试题 一线大厂和二线大厂面试真题精选 (字节跳动 附答案)第九套 38k+

    笔者是面霸,面试500+场       当过考官:面过别人500+场     去过500强,也呆过初创公司. 斩获腾讯.华为.字节跳动,蚂蚁金服,OPPO,美团,安卓岗offer!我有一套速通大厂技巧 ...

  5. android 红外遥控器实现原理

    一.红外遥控器是什么鬼 现有的红外遥控器有两种:一种是PWM(脉冲宽度调制),另外一种是PPM(脉冲位置调制): 这两种调制方式对应两种编码形式NEC(PWM对应的编码形式)和philips的RC-5 ...

  6. 【字符设备驱动】 -- NEC红外通信原理|红外协议|红外驱动|红外编解码|红外遥控器...

    目录 1. 红外基本介绍: 红外线的特点 红外线发射和接收 2.NEC协议介绍: NEC的数据格式: NEC协议中数据(DATA)段编码: NEC协议典型脉冲链: NEC载波调制: NEC载波解调: ...

  7. 单片机接收到红外对管的数据怎么用c语言程序传给led显示器,单片机实现遥控器-红外数据传输--红外编解码原理...

    一. 红外通信原理 红外遥控有发送和接收两个组成部分.发送端采用单片机将待发送的二进制信号编码调制为一系列的脉冲串信号,通过红外发射管发射红外信号.红外接收完成对红外信号的接收.放大.检波.整形,并解 ...

  8. 红外遥控实现回充原理红外发射与调制信号

    遥控红外通信原理 在实际的通信领域,发出来的信号一般有较宽的频谱,而且都是在比较低的频率段分布大量的能量,所以称之为基带信号,这种信号是不适合直接在信道中传输的.为便于传输.提高抗干扰能力和有效的利用 ...

  9. UUID的使用及其原理

    今天敲项目要用UUID,想起之前老师告诉UUID的使用,但没说具体的生成逻辑,于是我进行了百度 首先,UUID的使用: //生成随机的UUID String uuid = UUID.randomUUI ...

  10. etcd 笔记(01)— etcd 简介、特点、应用场景、常用术语、分布式 CAP 理论、分布式原理

    1. etcd 简介 etcd 官网定义: A highly-available key value store for shared configuration and service discov ...

最新文章

  1. Java基础篇:JDBC核心技术
  2. onsubmit阻止表单提交
  3. Spring data jpa命名规范
  4. java web五: tomcat的目录层次结构以及web应用
  5. gcc a.c 究竟经历了什么
  6. php dingo和jwt,Laravel实现dingo+JWT api接口之配置篇
  7. html flash 循环播放,在网页中插入flv格式的flash视频怎么让其循环播放_html/css_WEB-ITnose...
  8. linux备份文件到ftp上,Linux服务器下用FTP上传下载备份文件
  9. linux lnmp yum版安装
  10. Python3 爬虫学习笔记 C07 【解析库 lxml】
  11. Zoom 是如何击败科技巨头的?
  12. Linux下安装与使用本地的perl模块
  13. 携程帐号变更函(对私)
  14. 华为智慧屏跟Android,华为智慧屏全力打造智慧生活体验 “智慧屏”时代来临
  15. Weakly Supervised Semantic Segmentation list
  16. 网易im 服务器消息格式,机器人消息体模板说明-IM即时通讯-网易云信开发文档...
  17. 从聚焦沉淀到探索创新,跨境支付正在酝酿下一个行业浪潮
  18. 汇总:不同格式文件怎么转换成PDF?
  19. C语言F2的作用,c语言static的作用
  20. SPARK Your Embedded Development Project with eBox-4300 Windows Embedded CE 6.0 R2 Jump Start Kit

热门文章

  1. LeetCode 1564. 把箱子放进仓库里 I(排序)
  2. LeetCode 1954. 收集足够苹果的最小花园周长(数学)
  3. LeetCode 1653. 使字符串平衡的最少删除次数(DP)
  4. LeetCode 640. 求解方程(字符串)
  5. LeetCode 2019 力扣杯全国秋季编程大赛
  6. 华为服务器清除系统日志,清空服务器日志
  7. python 类继承 父类初始化_python之子类继承父类时进行初始化的一些问题
  8. ubuntu定时执行python脚本方法及实例代码
  9. php 数据接口,初识 php 接口
  10. java流的传递方式是_java中数据的传递方式到底是怎样的!