摘要:
DSP(Digital Signal Processing,数字信号处理)中会使用大量的数学运算。Cortex-M4中,配置了一些强大的部件,以提高DSP能力。同时CMSIS提供了一个DSP库,提供了许多数学函数的高效实现。这次就先做一个简单的尝试,求两个向量的数量积。 阅读全文
摘要:
浮点单元(Floating Point Unit,FPU),是用于处理浮点数运算的单元。为使用FPU,除了需要启用FPU外,还需要对编译器进行设置,以使其针对浮点运算生成特殊的指令。虽然在Atmel Studio 6中,开发板使用的工程模板中默认就完成了这两部分工作,但这次仍然对设置的方法进行介绍,同时简单测试一下FPU的效率。 阅读全文
摘要:
简单介绍了MAC,PHY,MII等术语,以及GMAC的DMA缓冲区。同时使用了ASF对GMAC和PHY进行了初始化,并简要说明了发送和接收数据的方法。另外,还对使用到的库函数的实现做了说明。 阅读全文
摘要:
DMAC也可以和外设进行数据交互。之前我们曾使用PDC进行USART的数据回显,这次就使用DMAC完成相同的工作。而且由于DMAC有内部的缓冲区,实现起来更为简单。 阅读全文
摘要:
DMA控制器(DMAC)比外设DMA控制器(PDC)要复杂,但是功能更加强大。为适应不同的传输要求,DMAC 可以进行灵活的自定义配置,甚至配备了一个FIFO缓存。另外,比起PDC只能设置下一次传输的参数(传输地址,数据量大小等),DMAC可以先在内存中保存好若干次传输的参数,然后自动进行多次传输(Multi-buffer传输)。这次使用这个DMAC的Multi-buffer传输功能,将两个缓冲区的内容拷贝至一个连续的缓冲区中。 阅读全文
摘要:
CAN协议具有良好的可靠性,在工业中应用广泛。这次就先熟悉CAN的基本功能。开发板有两个CAN,每个CAN有8个信箱。这次内容是从CAN0的信箱0发送数据到CAN1的信箱0。 阅读全文
摘要:
很多时候,一个电压不仅仅需要定性(高电平或者低电平),而且要定量(了解具体电压的数值)。这个时候就可以用到模数转换器(ADC)了。这次的内容是测量开发板搭载的滑动变阻器(VR1)的电压,然后把ADC转换的结果通过UART打印出来。同时,也简单介绍了校准的方法。 阅读全文
摘要:
交互还是很有必要的,而且使用键盘和显示器的交互效率还是很高的。当然,可以直接使用UART进行字符的输入和输出。但是又何必浪费了C的标准输入输出的格式控制之类的功能呢?这次内容就是使用scanf() 和printf() 函数进行PC和开发板的交互。 阅读全文
摘要:
这次大概介绍了一下NAND Flash,以及在ASF中使用它的方法。 阅读全文
摘要:
开发板上配了一个电阻触摸屏,它的控制器是ADS7843,使用SPI进行通信。这次实现的功能是通过SPI接口与该控制器交互,获取触摸屏点击的坐标,并显示在LCD上。略为难点的是SPI作为同步时钟的一种,需要判断时钟的极性以及相位。为了突出主题,就没有对电阻屏进行校准,显示的是控制器原始的输出值。 阅读全文
摘要:
在上个例子中,已经在ASF添加了ILI93xx模块,并做好了相关的声明。这次就做好SMC的配置,然后使用ASF提供的API在屏幕上打印出”Hello World!”字样。 阅读全文