GPIO_FM1288.c 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. #include "GPIO_FM1288.h"
  2. unsigned char FM1288Led;
  3. void GPIO_FM1288_Init(void)
  4. {
  5. GPIO_InitTypeDef GPIO_InitStructure;
  6. FM1288_RST_RccOpen();
  7. FM1288_VADLED_RccOpen();
  8. FM1288_PWR_RccOpen();
  9. RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
  10. //================================================
  11. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  12. GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
  13. GPIO_InitStructure.GPIO_Pin = FM1288_RST_LINE;
  14. GPIO_Init(FM1288_RST_Port,&GPIO_InitStructure);
  15. GPIO_SetBits(FM1288_RST_Port,FM1288_RST_LINE);
  16. //================================================
  17. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPD;
  18. GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
  19. GPIO_InitStructure.GPIO_Pin = FM1288_VADLED_LINE;
  20. GPIO_Init(FM1288_VADLED_Port,&GPIO_InitStructure);
  21. //================================================
  22. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
  23. GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
  24. GPIO_InitStructure.GPIO_Pin = FM1288_PWR_LINE;
  25. GPIO_Init(FM1288_PWR_Port,&GPIO_InitStructure);
  26. //================================================
  27. GPIO_SetBits(FM1288_PWR_Port,FM1288_PWR_LINE);
  28. /* FM1288 MUTE Input control, mutes Line-Out*/
  29. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  30. GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
  31. GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;
  32. GPIO_Init(GPIOB,&GPIO_InitStructure);
  33. //================================================
  34. GPIO_SetBits(GPIOB,GPIO_Pin_13);
  35. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  36. GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
  37. GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12;
  38. GPIO_Init(GPIOA,&GPIO_InitStructure);
  39. //================================================
  40. GPIO_ResetBits(GPIOA,GPIO_Pin_12);
  41. }
  42. unsigned char GPIO_FM1288_LED(void)
  43. {
  44. FM1288Led=GPIO_ReadInputDataBit(FM1288_VADLED_Port,FM1288_VADLED_LINE); //0:FM1288工作正常,1表示不正常
  45. return FM1288Led;
  46. }
  47. void GPIO_FM1288_RST(U08 prm)
  48. {
  49. if (prm) {
  50. GPIO_SetBits(FM1288_RST_Port,FM1288_RST_LINE);
  51. } else {
  52. GPIO_ResetBits(FM1288_RST_Port,FM1288_RST_LINE);
  53. }
  54. }
  55. /* FM1288 MUTE Input control, mutes Line-Out*/
  56. void GPIO_FM1288_Mute(U08 prm)
  57. {
  58. if (prm) {
  59. GPIO_SetBits(GPIOB,GPIO_Pin_13);
  60. } else {
  61. GPIO_ResetBits(GPIOB,GPIO_Pin_13);
  62. }
  63. }
  64. void GPIO_PA12_BroadcastMute(U08 prm)
  65. {
  66. if (prm) {
  67. GPIO_SetBits(GPIOA,GPIO_Pin_12);
  68. } else {
  69. GPIO_ResetBits(GPIOA,GPIO_Pin_12);
  70. }
  71. }