找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3114|回復: 9
收起左側

哪位老師幫忙看看這句C語言PCA_InitTypeDef 我沒看懂

[復制鏈接]
ID:230742 發(fā)表于 2021-9-24 00:16 | 顯示全部樓層 |閱讀模式
結構體的定義如下。我記得名字是PCA_InitTypeDef

typedef struct
{
        u8        PCA_IoUse;        //PCA_P12_P11_P10_P37, PCA_P34_P35_P36_P37, PCA_P24_P25_P26_P27
        u8        PCA_Clock;        //PCA_Clock_1T, PCA_Clock_2T, PCA_Clock_4T, PCA_Clock_6T, PCA_Clock_8T, PCA_Clock_12T, PCA_Clock_Timer0_OF
        u8        PCA_Mode;        //PCA_Mode_PWM, PCA_Mode_Capture, PCA_Mode_SoftTimer, PCA_Mode_HighPulseOutput
        u8        PCA_PWM_Wide;        //PCA_PWM_8bit, PCA_PWM_7bit, PCA_PWM_6bit
        u8        PCA_Interrupt_Mode;        //PCA_Rise_Active, PCA_Fall_Active, ENABLE, DISABLE
        u8        PCA_Polity;        //優(yōu)先級設置        PolityHigh,PolityLow
        u16        PCA_Value;
        u8        PCA_RUN;        //ENABLE, DISABLE
} PCA_InitTypeDef;

void        PCA_config(void)
{
        PCA_InitTypeDef                PCA_InitStructure;

        PCA_InitStructure.PCA_Clock    = PCA_Clock_1T;                //PCA_Clock_1T, PCA_Clock_2T, PCA_Clock_4T, PCA_Clock_6T, PCA_Clock_8T
        PCA_InitStructure.PCA_IoUse    = PCA_P24_P25_P26_P27;        //PCA_P12_P11_P10_P37, PCA_P34_P35_P36_P37, PCA_P24_P25_P26_P27
        PCA_InitStructure.PCA_Interrupt_Mode = DISABLE;                //ENABLE, DISABLE
        PCA_InitStructure.PCA_Polity   = PolityLow;                        //優(yōu)先級設置        PolityHigh,PolityLow
        PCA_InitStructure.PCA_RUN      = DISABLE;                        //ENABLE, DISABLE
        PCA_Init(PCA_Counter,&PCA_InitStructure);


初始化的時候    PCA_InitTypeDef                PCA_InitStructure;這句是什么意思呢?

另外PCA_InitStructure.PCA_IoUse    = PCA_P24_P25_P26_P27;這個賦值為什么是這么寫的?

謝謝大家了。
回復

使用道具 舉報

ID:968007 發(fā)表于 2021-9-24 16:55 | 顯示全部樓層
2<<4的意思2乘以2的四次方
回復

使用道具 舉報

ID:514901 發(fā)表于 2021-9-24 13:55 | 顯示全部樓層
啤酒瓶子老大 發(fā)表于 2021-9-24 12:27
謝謝。我搜索到了。
#define        PCA_P24_P25_P26_P27        (2

2<<4的意思是2左移四位,不好理解的話你就當成2乘以2的四次方

評分

參與人數 1黑幣 +15 收起 理由
啤酒瓶子老大 + 15 很給力!

查看全部評分

回復

使用道具 舉報

ID:514901 發(fā)表于 2021-9-24 13:53 | 顯示全部樓層
PCA_InitTypeDef是結構體聲明,PCA_InitStructure是PCA_InitTypeDef類型的變量,就像你定義int a;a是int類型的變量

評分

參與人數 1黑幣 +15 收起 理由
啤酒瓶子老大 + 15 很給力!

查看全部評分

回復

使用道具 舉報

ID:230742 發(fā)表于 2021-9-24 12:27 | 顯示全部樓層
glinfei 發(fā)表于 2021-9-24 08:33
同意并補充一下:
#define        PCA_P12_P11_P10_P37        (0

謝謝。我找到了。
#define        PCA_P24_P25_P26_P27        (2<<4)
這里是有宏定義。但(2<<4)是什么意思呢?
能簡單說一下嗎?謝謝。
回復

使用道具 舉報

ID:230742 發(fā)表于 2021-9-24 12:27 | 顯示全部樓層
slf252 發(fā)表于 2021-9-24 08:22
1.PCA_InitStructure是結構體PCA_InitTypeDef的變量,名字可以自己定義.
2.PCA_P24_P25_P26_P27這個賦值頭 ...

謝謝。我搜索到了。
#define        PCA_P24_P25_P26_P27        (2<<4)
這里是有宏定義。但(2<<4)是什么意思呢?
能簡單說一下嗎?謝謝。
回復

使用道具 舉報

ID:967904 發(fā)表于 2021-9-24 09:59 | 顯示全部樓層
初始化的時候  按PCA_InitTypeDef結構體類型 初始化一個PCA_InitStructure的變量。PCA_P24_P25_P26_P27應該是有宏定義的你查查它的宏定義

評分

參與人數 1黑幣 +15 收起 理由
啤酒瓶子老大 + 15 贊一個!

查看全部評分

回復

使用道具 舉報

ID:844772 發(fā)表于 2021-9-24 08:33 | 顯示全部樓層
slf252 發(fā)表于 2021-9-24 08:22
1.PCA_InitStructure是結構體PCA_InitTypeDef的變量,名字可以自己定義.
2.PCA_P24_P25_P26_P27這個賦值頭 ...

同意并補充一下:
#define        PCA_P12_P11_P10_P37        (0<<4)
#define        PCA_P34_P35_P36_P37        (1<<4)
#define        PCA_P24_P25_P26_P27        (2<<4)

評分

參與人數 1黑幣 +15 收起 理由
啤酒瓶子老大 + 15 贊一個!

查看全部評分

回復

使用道具 舉報

ID:359272 發(fā)表于 2021-9-24 08:22 | 顯示全部樓層
1.PCA_InitStructure是結構體PCA_InitTypeDef的變量,名字可以自己定義.
2.PCA_P24_P25_P26_P27這個賦值頭文件或者前面應該有定義說明,可以搜索下.

評分

參與人數 1黑幣 +15 收起 理由
啤酒瓶子老大 + 15 很給力!

查看全部評分

回復

使用道具 舉報

ID:123289 發(fā)表于 2021-9-24 07:57 | 顯示全部樓層
每一句都是一個子程序。
你借用了別人的程序,當然需要看程序的說明。
去源頭找找看。

評分

參與人數 1黑幣 +15 收起 理由
啤酒瓶子老大 + 15 很給力!

查看全部評分

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表