打卡等级:以坛为家II
打卡总天数:436
最近打卡:2025-05-07 07:52:11
已绑定手机
高级会员
积分 673
本帖最后由 以莹唤星 于 2024-8-4 15:30 编辑
求助下关于数组的问题,本想做流水灯的,但是在实验箱9.62上每次两三四个LED,希望大佬帮看下代码有什么问题。
#include <STC32G.H>
#define MAIN_Fosc 35000000UL //定义主频35MHz,请根据实际使用频率修改(用于delay函数自适应主频)
typedef unsigned char u8; //unsigned char 类型,用u8表示
typedef unsigned int u16; //unsigned int 类型,用u16表示
typedef unsigned long int u32; //unsigned long int 类型,用u32表示
void delayms(u16 ms); //延时函数声明
void main()
{
u8 LED[8] = {0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE};
u8 i;
P4M0 = 0x00; P4M1 = 0x00;
P6M0 = 0x00; P6M1 = 0x00;
P40 = 0;
while(1)
{
for(i=0;i<8;i++)
{
P6=LED;
delayms(500);
P6=0xFF;
delayms(500);
}
}
}
void delayms(u16 ms) //简单延时函数,自适应主频,1毫秒*ms
{
u16 i;
do{
i = MAIN_Fosc / 6000;
while(--i);
}while(--ms);
}
Your browser does not support video tags.