标签: codewarrior

第一次嵌入系统编程器使用哪个微控制器是否重要?

我有几年的桌面和网络编程经验.我想继续做一些嵌入式系统编程.在询问了最初的问题后,我想知道我应该从哪个硬件/软件IDE开始......

或者......没关系?

哪个开发平台最容易学习和编程(考虑到IDE的可用性)?

如果出现问题,哪一个最容易调试?

我的目标是了解"IO端口如何工作,内存限制/要求,包括可能的分页,中断服务程序". 学习一个我稍后会使用的,或者高级概念应该延续到大多数微控制器是否更好?

谢谢!

更新:这个开发工具包是如何开始的?评论?建议?

embedded microcontroller codewarrior arduino avr-studio4

35
推荐指数
2
解决办法
9021
查看次数

使用ARM Cortex-M4和gcc编译器进行定点数学运算

我正在使用飞思卡尔Kinetis K60并使用CodeWarrior IDE(我认为它使用GCC作为编译器).

我想将两个32位数相乘(这导致64位数)并且只保留高32位.

我认为ARM Cortex-M4的正确汇编指令是SMMUL指令.我更喜欢从C代码而不是汇编访问此指令.我该怎么做呢?

我想代码理想情况下是这样的:

int a,b,c;

a = 1073741824;   // 0x40000000 = 0.5 as a D0 fixed point number
b = 1073741824;   // 0x40000000 = 0.5 as a D0 fixed point number

c = ((long long)a*b) >> 31;  // 31 because there are two sign bits after the multiplication
                             // so I can throw away the most significant bit
Run Code Online (Sandbox Code Playgroud)

当我在CodeWarrior中尝试这个时,我得到c的正确结果(536870912 = 0.25作为D0 FP号).我没有看到任何地方的SMMUL指令,乘法是3条指令(UMULL,MLA和MLA - 我不明白它为什么使用无符号乘法,但这是另一个问题).我也尝试过32的右移,因为这可能对SMMUL指令更有意义,但这并没有做任何不同的事情.

gcc codewarrior arm cortex-m3

8
推荐指数
1
解决办法
4985
查看次数

使用汇编语言反转一个字节

我在微处理器类中,我们在飞思卡尔CodeWarrior中使用汇编语言来编程68HCS12微控制器.本周我们的任务是反转一个字节,所以如果字节是00000001,输出将是10000000,或者是00101011到11010100.我们必须使用汇编语言,并被告知我们可以使用旋转和移位(但不限于! )完成这项任务.我真的不知道应该从哪里开始.

assembly reverse codewarrior bit-manipulation 68hc12

7
推荐指数
3
解决办法
2万
查看次数

了解由于从 doc 文件而不是 txt 文件复制代码而导致的编译错误

情况:

我的微控制器课程的讲师拒绝将示例代码保存到文本文件中,而是将其保存到 word 文档文件中。当我打开 doc 文件并将代码复制/粘贴到我的 IDE“CodeWarrior”中时,它会在编译时导致错误。

我不得不将所有代码重写到文本编辑器中,然后将其复制/粘贴到我的 IDE 中。

我的理解:

我被告知始终将代码保存为文本文件,因为当您将代码保存为 Word 文档文件时,当您将代码复制/粘贴到 IDE 进行编译时,它会引入不需要的字符。

我对你的问题:

1.)

有人可以向我解释这个困境,以便我更好地理解它吗?当我下次收到错误时,我想提出一个更好的案例,并了解更多关于正在发生的事情。

2.)

是否可以编写一个脚本,当代码来自 Word 文档与文本文件时,向我显示所有正在复制并粘贴到文件中的字符?换句话说,是否有一个程序可以让我看到从 word doc 文件与 txt 文件复制/粘贴代码之间发生了什么?

c codewarrior copy-paste file

4
推荐指数
1
解决办法
984
查看次数