木木01
发表于 2025-3-9 20:58:25
关于第9集数码管47分50秒左右你说好的要输出CYCY哪里来的{:4_184:}
这里凭啥就冒出个CY变量来了,反复听没听明白
void Send_595( u8 dat )
{
u8 i;
for( i=0;i<8;i++ )
{
dat <<= 1; //DAT = (DAT<<1); //CY
HC595_SER = CY; //先把数据写到引脚上
HC595_SCK = 1; //输出上升沿的时钟信号
HC595_SCK = 0;
}
}
木木01
发表于 2025-3-9 21:02:59
木木01 发表于 2025-3-9 20:58
关于第9集数码管47分50秒左右你说好的要输出CYCY哪里来的
这里凭啥就冒出个CY变量来了,反复听没听明 ...
dat左移会到CY里去,有什么说法吗,这有点跳跃啊
木木01
发表于 2025-3-10 09:48:44
张山峰 发表于 2025-3-10 07:22
CY是程序状态寄存器,把最高位左移一位到寄存器最高位。
嗯嗯,CY的功能大概是明白了,反正就是个有特定功能的特殊变量
我更倾向于使用这种明确的逻辑
HC595_SER = (dat & 0x80) ? 1 : 0; // 取 dat 的最高位
dat >>= 1; // 右移1位,准备下一次取最高位。
木木01
发表于 2025-3-10 09:56:08
张山峰 发表于 2025-3-10 07:36
回头看51基础吧
确实是没有51基础,直接就是上手用esp32的{:xiaoku:}
51必学吗,c/c++在这行代码的处理方式上可以用更直白的表达的呀
木木01
发表于 2025-3-10 09:57:25
windsoft77 发表于 2025-3-10 08:54
有器材支持最好了
我已经领了核心板和Ai8051u试验箱了,这不已经很香了吗{:huaixiao:}
木木01
发表于 2025-3-10 09:58:24
nzh 发表于 2025-3-9 11:51
第8集学习,我觉得学完冲哥的ai8051u深度入门,以后自己可以写操作系统了
说干就干{:koubi:}
Sky_chen4
发表于 2025-3-10 10:01:44
神农鼎 发表于 2024-11-19 10:47
2024/12/9:
冲哥重披战袍,Ai8051U 实战教学 视频 上线
希望大佬速更,我已经饥渴难耐了{:4_202:}
禁止发言
发表于 2025-3-10 10:17:22
请教大佬们,定时器多任务 有点不明,static TASK_COMPONENTS Task_Comps[]=
{
//状态计数周期函数
{0, 500,500,Sample_LED0}, /* task 1 Period: 500ms */
{0, 1000, 1000,Sample_LED2}, /* task 2 Period: 1000ms */
{0, 2000, 2000,Sample_LED4}, /* task 3 Period: 2000ms */
// {0, 500, 500, Sample_RTC}, /* task 4 Period: 500ms */
/* Add new task here */
};
u8 Tasks_Max = sizeof(Task_Comps)/sizeof(Task_Comps);
//========================================================================
// 函数: Task_Handler_Callback
// 描述: 任务标记回调函数.
// 参数: None.
// 返回: None.
// 版本: V1.0, 2012-10-22
//========================================================================
void Task_Marks_Handler_Callback(void)
{
u8 i;
for(i=0; i<Tasks_Max; i++)
{
if(Task_Comps.TIMCount) /* If the time is not 0 */
{
Task_Comps.TIMCount--; /* Time counter decrement */
if(Task_Comps.TIMCount == 0) /* If time arrives */
{
/*Resume the timer value and try again */
Task_Comps.TIMCount = Task_Comps.TRITime;
Task_Comps.Run = 1; /* The task can be run */
}
}
}
}
//========================================================================
// 函数: Task_Pro_Handler_Callback
// 描述: 任务处理回调函数.
// 参数: None.
// 返回: None.
// 版本: V1.0, 2012-10-22
//========================================================================
void Task_Pro_Handler_Callback(void)
{
u8 i;
for(i=0; i<Tasks_Max; i++)
{
if(Task_Comps.Run) /* If task can be run */
{
Task_Comps.Run = 0; /* Flag clear 0 */
Task_Comps.TaskHook(); /* Run task */
}
}
}
搞来搞不上在40P的AI8051U -34K64
ZRF197210
发表于 2025-3-10 19:27:19
下午用核心板试了一下下载,挺好用。
禁止发言
发表于 2025-3-11 08:02:15
{:4_174:}学习中