我正在用 C 语言编写 AVR 微控制器 Atmega16。
我不懂 C,我把时间花在 PHP 上编程,而我只是不懂 C。
我也不明白如何在这里发布源代码。如果有人知道,请修复我的标签。
我的问题是,我有这个功能:
unsigned char
convert_sn_to_string (const unsigned char *SN_a /* IDstring */ )
{
unsigned char i;
for (i = 0; i < 6; i++) //6 byte az SN
{
if(SN_a[i]==0x00)
{
Send_A_String("00");
}
}
return 1;
}
在 for 循环中,我可以通过十六进制访问 6 字节值。
在变量 SN_A 里面我可以有
SN_A[0]=0x00;
SN_A[1]=0xFF;
SN_A[3]=0xAA;
SN_A[4]=0x11;
(...)
和类似的。它可以是从 00 到 FF。
我需要的是将该代码转换为 12 个字符的字符串。如果我有
SN_A[0]=0x00;
SN_A[1]=0xFF;
SN_A[3]=0xAA;
SN_A[4]=0x11;
(...)
我想得到输出
new[0]=0;
new[1]=0;
new[2]=A;
new[3]=A;
new[4]=1;
new[5]=1;
(...)
等到 12,因为我想将 6(双)AA 值更改为分开。
那么我可以做一个循环
for i=0 i<12 i++
{
do_something_with_one_letter(new[i]);
}
现在我可以使用这些值,我可以将它们发送到显示,或者我需要的任何东西。