Commit c0c740ea authored by 李俭双's avatar 李俭双

🐞 fix:更换操作寄存器的方式操作IO口

parent 82902743
#include "Components.h" #include "Components.h"
#include "BAT32A239.h"
#include <string.h>
#include <stdio.h>
#define BU98R10_CHIP0_SD RTE_GPIO_PORT00_PIN02 #define BU98R10_CHIP0_SD RTE_GPIO_PORT00_PIN02
#define BU98R10_CHIP0_CSB RTE_GPIO_PORT00_PIN03 #define BU98R10_CHIP0_CSB RTE_GPIO_PORT00_PIN03
...@@ -25,12 +29,16 @@ void BU98R10_CHIP0_SET_SD_LEVEL(uint8_t Level) ...@@ -25,12 +29,16 @@ void BU98R10_CHIP0_SET_SD_LEVEL(uint8_t Level)
if (Level) if (Level)
{ {
//RTE_GPIO_Config(BU98R10_CHIP0_SD, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_HIGH); //RTE_GPIO_Config(BU98R10_CHIP0_SD, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_HIGH);
RTE_GPIO_Set_Level(BU98R10_CHIP0_SD, RTE_GPIO_LEVEL_HIGH); //RTE_GPIO_Set_Level(BU98R10_CHIP0_SD, RTE_GPIO_LEVEL_HIGH);
PORT->P0 |= (1<<2);
PORT->PM0 &= ~(1<<2);
} }
else else
{ {
//RTE_GPIO_Config(BU98R10_CHIP0_SD, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_LOW); //RTE_GPIO_Config(BU98R10_CHIP0_SD, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_LOW);
RTE_GPIO_Set_Level(BU98R10_CHIP0_SD, RTE_GPIO_LEVEL_LOW); //RTE_GPIO_Set_Level(BU98R10_CHIP0_SD, RTE_GPIO_LEVEL_LOW);
PORT->P0 &= ~(1<<2);//P02
PORT->PM0 &= ~(1<<2);
} }
} }
void BU98R10_CHIP1_SET_SD_LEVEL(uint8_t Level); void BU98R10_CHIP1_SET_SD_LEVEL(uint8_t Level);
...@@ -39,12 +47,16 @@ void BU98R10_CHIP1_SET_SD_LEVEL(uint8_t Level) ...@@ -39,12 +47,16 @@ void BU98R10_CHIP1_SET_SD_LEVEL(uint8_t Level)
if (Level) if (Level)
{ {
//RTE_GPIO_Config(BU98R10_CHIP1_SD, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_HIGH); //RTE_GPIO_Config(BU98R10_CHIP1_SD, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_HIGH);
RTE_GPIO_Set_Level(BU98R10_CHIP1_SD, RTE_GPIO_LEVEL_HIGH); //RTE_GPIO_Set_Level(BU98R10_CHIP1_SD, RTE_GPIO_LEVEL_HIGH);
PORT->P7 |= (1<<2);
PORT->PM7 &= ~(1<<2);
} }
else else
{ {
//RTE_GPIO_Config(BU98R10_CHIP1_SD, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_LOW); //RTE_GPIO_Config(BU98R10_CHIP1_SD, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_LOW);
RTE_GPIO_Set_Level(BU98R10_CHIP1_SD, RTE_GPIO_LEVEL_LOW); //RTE_GPIO_Set_Level(BU98R10_CHIP1_SD, RTE_GPIO_LEVEL_LOW);
PORT->P7 &= ~(1<<2);//P72
PORT->PM7 &= ~(1<<2);
} }
} }
void BU98R10_CHIP0_SET_CSB_LEVEL(uint8_t Level); void BU98R10_CHIP0_SET_CSB_LEVEL(uint8_t Level);
...@@ -53,12 +65,16 @@ void BU98R10_CHIP0_SET_CSB_LEVEL(uint8_t Level) ...@@ -53,12 +65,16 @@ void BU98R10_CHIP0_SET_CSB_LEVEL(uint8_t Level)
if (Level) if (Level)
{ {
// RTE_GPIO_Config(BU98R10_CHIP0_CSB, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_HIGH); // RTE_GPIO_Config(BU98R10_CHIP0_CSB, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_HIGH);
RTE_GPIO_Set_Level(BU98R10_CHIP0_CSB, RTE_GPIO_LEVEL_HIGH); //RTE_GPIO_Set_Level(BU98R10_CHIP0_CSB, RTE_GPIO_LEVEL_HIGH);
PORT->P0 |= (1<<3);
PORT->PM0 &= ~(1<<3);
} }
else else
{ {
// RTE_GPIO_Config(BU98R10_CHIP0_CSB, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_LOW); // RTE_GPIO_Config(BU98R10_CHIP0_CSB, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_LOW);
RTE_GPIO_Set_Level(BU98R10_CHIP0_CSB, RTE_GPIO_LEVEL_LOW); //RTE_GPIO_Set_Level(BU98R10_CHIP0_CSB, RTE_GPIO_LEVEL_LOW);
PORT->P0 &= ~(1<<3);//P03
PORT->PM0 &= ~(1<<3);
} }
} }
void BU98R10_CHIP1_SET_CSB_LEVEL(uint8_t Level); void BU98R10_CHIP1_SET_CSB_LEVEL(uint8_t Level);
...@@ -67,12 +83,16 @@ void BU98R10_CHIP1_SET_CSB_LEVEL(uint8_t Level) ...@@ -67,12 +83,16 @@ void BU98R10_CHIP1_SET_CSB_LEVEL(uint8_t Level)
if (Level) if (Level)
{ {
// RTE_GPIO_Config(BU98R10_CHIP1_CSB, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_HIGH); // RTE_GPIO_Config(BU98R10_CHIP1_CSB, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_HIGH);
RTE_GPIO_Set_Level(BU98R10_CHIP1_CSB, RTE_GPIO_LEVEL_HIGH); //RTE_GPIO_Set_Level(BU98R10_CHIP1_CSB, RTE_GPIO_LEVEL_HIGH);
PORT->P7 |= (1<<1);
PORT->PM7 &= ~(1<<1);
} }
else else
{ {
//RTE_GPIO_Config(BU98R10_CHIP1_CSB, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_LOW); //RTE_GPIO_Config(BU98R10_CHIP1_CSB, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_LOW);
RTE_GPIO_Set_Level(BU98R10_CHIP1_CSB, RTE_GPIO_LEVEL_LOW); //RTE_GPIO_Set_Level(BU98R10_CHIP1_CSB, RTE_GPIO_LEVEL_LOW);
PORT->P7 &= ~(1<<1);//P71
PORT->PM7 &= ~(1<<1);
} }
} }
void BU98R10_CHIP0_SET_SCL_LEVEL(uint8_t Level); void BU98R10_CHIP0_SET_SCL_LEVEL(uint8_t Level);
...@@ -81,12 +101,16 @@ void BU98R10_CHIP0_SET_SCL_LEVEL(uint8_t Level) ...@@ -81,12 +101,16 @@ void BU98R10_CHIP0_SET_SCL_LEVEL(uint8_t Level)
if (Level) if (Level)
{ {
//RTE_GPIO_Config(BU98R10_CHIP0_SCL, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_HIGH); //RTE_GPIO_Config(BU98R10_CHIP0_SCL, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_HIGH);
RTE_GPIO_Set_Level(BU98R10_CHIP0_SCL, RTE_GPIO_LEVEL_HIGH); //RTE_GPIO_Set_Level(BU98R10_CHIP0_SCL, RTE_GPIO_LEVEL_HIGH);
PORT->P0 |= (1<<4);
PORT->PM0 &= ~(1<<4);
} }
else else
{ {
//RTE_GPIO_Config(BU98R10_CHIP0_SCL, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_LOW); //RTE_GPIO_Config(BU98R10_CHIP0_SCL, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_LOW);
RTE_GPIO_Set_Level(BU98R10_CHIP0_SCL, RTE_GPIO_LEVEL_LOW); //RTE_GPIO_Set_Level(BU98R10_CHIP0_SCL, RTE_GPIO_LEVEL_LOW);
PORT->P0 &= ~(1<<4);//P04
PORT->PM0 &= ~(1<<4);
} }
} }
void BU98R10_CHIP1_SET_SCL_LEVEL(uint8_t Level); void BU98R10_CHIP1_SET_SCL_LEVEL(uint8_t Level);
...@@ -95,12 +119,16 @@ void BU98R10_CHIP1_SET_SCL_LEVEL(uint8_t Level) ...@@ -95,12 +119,16 @@ void BU98R10_CHIP1_SET_SCL_LEVEL(uint8_t Level)
if (Level) if (Level)
{ {
//RTE_GPIO_Config(BU98R10_CHIP1_SCL, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_HIGH); //RTE_GPIO_Config(BU98R10_CHIP1_SCL, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_HIGH);
RTE_GPIO_Set_Level(BU98R10_CHIP1_SCL, RTE_GPIO_LEVEL_HIGH); //RTE_GPIO_Set_Level(BU98R10_CHIP1_SCL, RTE_GPIO_LEVEL_HIGH);
PORT->P7 |= (1<<0);
PORT->PM7 &= ~(1<<0);
} }
else else
{ {
//RTE_GPIO_Config(BU98R10_CHIP1_SCL, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_LOW); //RTE_GPIO_Config(BU98R10_CHIP1_SCL, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_LOW);
RTE_GPIO_Set_Level(BU98R10_CHIP1_SCL, RTE_GPIO_LEVEL_LOW); //RTE_GPIO_Set_Level(BU98R10_CHIP1_SCL, RTE_GPIO_LEVEL_LOW);
PORT->P7 &= ~(1<<0);//P70
PORT->PM7 &= ~(1<<0);
} }
} }
void BU98R10_CHIP0_SET_SD_DIR(uint8_t Dir); void BU98R10_CHIP0_SET_SD_DIR(uint8_t Dir);
...@@ -108,12 +136,15 @@ void BU98R10_CHIP0_SET_SD_DIR(uint8_t Dir) ...@@ -108,12 +136,15 @@ void BU98R10_CHIP0_SET_SD_DIR(uint8_t Dir)
{ {
if (Dir) if (Dir)
{ {
RTE_GPIO_Set_Level(BU98R10_CHIP0_SD, RTE_GPIO_LEVEL_HIGH); //RTE_GPIO_Set_Level(BU98R10_CHIP0_SD, RTE_GPIO_LEVEL_HIGH);
PORT->P0 |= (1<<2);
PORT->PM0 &= ~(1<<2);
// RTE_GPIO_Config(BU98R10_CHIP0_SD, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_HIGH); // RTE_GPIO_Config(BU98R10_CHIP0_SD, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_HIGH);
} }
else else
{ {
RTE_GPIO_Config(BU98R10_CHIP0_SD, RTE_GPIO_DIR_IN); //RTE_GPIO_Config(BU98R10_CHIP0_SD, RTE_GPIO_DIR_IN);
PORT->PM0 |= (1<<2);
} }
} }
void BU98R10_CHIP1_SET_SD_DIR(uint8_t Dir); void BU98R10_CHIP1_SET_SD_DIR(uint8_t Dir);
...@@ -122,11 +153,14 @@ void BU98R10_CHIP1_SET_SD_DIR(uint8_t Dir) ...@@ -122,11 +153,14 @@ void BU98R10_CHIP1_SET_SD_DIR(uint8_t Dir)
if (Dir) if (Dir)
{ {
//RTE_GPIO_Set_Level(BU98R10_CHIP1_SD, RTE_GPIO_LEVEL_HIGH); //RTE_GPIO_Set_Level(BU98R10_CHIP1_SD, RTE_GPIO_LEVEL_HIGH);
RTE_GPIO_Config(BU98R10_CHIP1_SD, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_HIGH); //RTE_GPIO_Config(BU98R10_CHIP1_SD, RTE_GPIO_DIR_OUT | RTE_GPIO_LEVEL_HIGH);
PORT->P7 |= (1<<2);
PORT->PM7 &= ~(1<<2);
} }
else else
{ {
RTE_GPIO_Config(BU98R10_CHIP1_SD, RTE_GPIO_DIR_IN); //RTE_GPIO_Config(BU98R10_CHIP1_SD, RTE_GPIO_DIR_IN);
PORT->PM7 |= (1<<2);
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment