初步代码
This commit is contained in:
parent
7c1d5cd670
commit
79a1926fa5
@ -1,15 +1,16 @@
|
||||
:800000000D01000067010000000000000000000000000000E1016901AE0100000000000046026002000000001002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000053
|
||||
:80000000CE00000028010000000000000000000000000000A2012A016F010000000000000702210200000000D10100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004D
|
||||
:390082000002000002F7080801000AF70802010012F700000000000000000000000000000000000000000000000000000000000000000000000000000024
|
||||
:0400C000FFFFE0045A
|
||||
:0A00C4000000000000000000000032
|
||||
:3F00CE005008000002F7990801000AF7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000FF
|
||||
:FF010D00CBF820FE308AF7FC620200FCDE02003600F73049F7EF04CC0000A747DFF93620FE3020FEEF04CC0000A747DFF94100323F00EF08B31149CE00484AF7F643DFF44100320000EF08B3114980004820FEF643DFF4FCA60200F6EFFE61FCC1C3C5C78EFD708EFCC1C78D129800AF34F74232F7880061D323EB30F799A230F7A232F7AF34F74232F761F8FC990500C0C09EFC609EFDC6C4C2C061FC318EFC9D0500EFEBC1C3C5C78EFD708EFCC1C7EB30F78D1299AF0201605C0798008800318EBF0A018800FC9F0500C0C09EFC609EFDC6C4C2C061FCC1C3C5C78EFD708EFCC1AF2EF7F743DF06FC9E0500EF0CEB2CF7899D10A22CF7B22EF7C09EFC609EFDC6C405
|
||||
:56020C00C2C061FCC1C3C5C78EFD708EFCC18E3191DD1291DD1BCE3101C09EFC609EFDC6C4C2C061FC3036F7FCF70500CE3102EFE83038F7FCF70500EFDCC1C3C5C78EFD708EFCC1FCC60700C09EFC609EFDC6C4C2C061FC61FC58
|
||||
:FF02620016C80300AEF82761D339315E12F643DD27BBBC02BC04BC06BC08BC0ABC0CBC0EBC10BC12BC14BC16BC18BC1ABC1CBC1E3704200037B3EFD6AEF847DD06F6BBA7A7EFF5D7717AFAFCD50600FCF00600FC970700EFFA717AFAD7F57700FCF40200FCE30200FC5D0400FC820400FCA30500FCFE0500FC480400F57800D7717BFAEFD836A1FFCEA00071F2714BA4F5F3007183D78EA8D7FC0A0500E73013F7FC5A0500F512F7D74C04DF0DD513F7DF05CF12F702D7E512F7D720068F12F798030CFEDD3691DD4091DF3AE91DF78F1CF7614B61C8EEE90073D913F7601814F783639F1CF760318E022AF7BF2AF7440001DC120401FFBF2AF7EF0ACF13F755880381EC
|
||||
:FF0361009F12F7EEAF008F13F79800F19802318E12312D14311C1305044AF71688004DDD0B88028198024C02DCE4EF2A17A114F51CF78998049F1DF78800318EB800BF2AF71704040016A5AB16BF1EF789D18803DF06819F12F7EF540C029F12F7F1980288047088026148DE27318E0714880273891820F7C2C389318E0312440001DC040401FF12BF2AF78802819802C0C3EFD088047388007CFF1820F7318EBF2AF78804318E12A33020F7FC72050088024C0261F8E512F7E73013F71006EC5A050051FF7F2AF772318EBF2AF7624F13F7DFE2E512F7F172614BDED9318E021EF7142914F7998262EFEE36E4FF7182710BE0710AEC710AE87183D7CEABACD734600097
|
||||
:FF046000CD01E0CD0503CA00FDCA0E7FCA1603CE20FFCE211FCE22FFCE23FFCE25FCCE2EFFD736F00030330071A200000000BC36347000AAB4086C0308BAB4710AE5710BE1711AE5711BE1712AE5712BE1710AED710AE9711AED711AE9712AED712AE9302200BAA0309780BAA8C910009A89718A99300700BA9A302201BAA2309744BAAAC912009AAAB8086C0108BAB8AAC4BAC4AABA086C0108BABA51026F21FF9E216A010451FB5F21FF9E21D7342201AA06086C0108BA06AA08086C0108BA08A9086C0308B9710BE1711BE1712BE1710BE5711BE5712BE5D7342401710AE5711AE5712AE5A9086C0308B9AA06085CFE08BA06710BE1711BE1712BE1D714136168DFC8
|
||||
:FF055F0004308100D7F6BF32F713BF34F715BF30F7F6D714136168DF04308100D736E5FF15BF2CF713BF2EF77182EB2CF7899D10A22CF7B22EF77183F6D7EC190300D7D7EC07030030100004E0001634100071D2CE3000712AE6712BE2712AEE712AEA51036F22FF9E22CE3008CE32A0CA0000CA01FFCA0200CE3101710A30D7712BE2712BE6717A30D7717B30712AE6712BE2D7710A30D7710B30D714AD1E316EB9D734F00036F000F67182BAC630FF0ABAC4714AE6714BE2715AE6715BE2717AE5717BE1716AE6716BE2717AE6717BE2712AE6712BE2717AE7717BE3710AD4710BD0711AD4711BD0712AD4712BD0714AEE714AEA715AEE715AEAF6BAA0C918BF5DAA95
|
||||
:FF065E00C8085CFE08BAC8AACA085CFE08BACAF6BAA2C91A5F09AACE085CFD08BACEAACC085CFD08BACCAAC8085CFD08BAC8AACA085CFD08BACAD734B201714BE2714BE6A9086C0108B9D734B401A9086C0108B9714AE6714BE2D734B201715BE2715BE6A9086C0208B9D734B401A9086C0208B9715AE6715BE2D7FC3B0800FC950600FCDB0500FCEF0500FCB50600712204ECF70200C7F19800318E12311CF67856F78800731976F700836398004C10DFE8C0D7D72004F1EF4F819802FC6008007291DF298800318E148800730976F7D1DF1B1501B8000456F714A9A1B9440700DC201976F701C2C3300600EF12D2DF1288007388001976F700318E12311CF67856F768
|
||||
:FF075D0088024C10DD049800EFAD1004D7F17370723117606101700976F7D1DD0460718A70097EF7D1DD0462718A7283634C08DFE0609F0AF7629F0BF7D74043F701DF09F543F7FE6CFFFEC4FF4044F70161F8F544F74047F701DF07F547F7FC5904004048F70161F8F548F7D7A240F7E542F7AF40F7320500FC4C0900F74361F8E543F7AF40F7520AFC4C0900F74361F8E544F7AF40F75214FC4C0900F74361F8E545F7AF40F75232FC4C0900F74361F8E546F7AF40F75264FC4C0900F74361F8E547F7AF40F732E803FC4C0900F74361F8E548F7AF40F74460EADC04F6BF40F7D73621FF712B2471C2713B2271A2D7D7141304E2FF45DE0C13041E0045E161E3F131E5
|
||||
:F0085C008ED7F6D791DD3B91DD3E91DD4191DD4491DD4591DD4691DD4C91DD4F91DD5191DD5E91DD6B91DD789161F8EE82009161F8EE8C009161F8EE96009161F8EEA000F1D78D01311AEF188D0D317AEF148D0C312AEF0C8D0CEFEC8D01EFF48D01313A5C017C01D78D01314AEFF5E15B01EFF2AF38F732B300FE75FFF743E161F8F1D7AF38F732FF01FE65FFF743E161F8F1D7AF38F7323101FE55FFF743E161F8F1D7AF38F732B802FE45FFF743E161F8F1D7AF36F732B300FE35FFF743E161F8F1D7AF36F732FF01FE25FFF743E161F8F1D7AF36F7323101FE15FFF743E161F8F1D7AF36F732B802FE05FFF743E161F8F1D719
|
||||
:29094C0014F64315DD2261DD717BFACFE80080BEF013BEF6F6BEF2BEF4CFE800818FE8003103FAAFE00061CDD788
|
||||
:FF00CE00CBF820FE3092F7FC230200FC9F02003600F73057F7EF04CC0000A747DFF93620FE3020FEEF04CC0000A747DFF94100323900EF08B3114982004858F7F643DFF44100320000EF08B3114980004820FEF643DFF4FC670200F6EFFE61FCC1C3C5C78EFD708EFCC1C78D129800AF3CF7423AF7880061D323EB38F799A238F7A23AF7AF3CF7423AF761F8FC5F0500C0C09EFC609EFDC6C4C2C061FC318EFC630500EFEBC1C3C5C78EFD708EFCC1C7EB38F78D1299AF0201605C0798008800318EBF0A018800FC650500C0C09EFC609EFDC6C4C2C061FCC1C3C5C78EFD708EFCC1AF36F7F743DF06FC640500EF0CEB34F7899D10A234F7B236F7C09EFC609EFDC6C4B8
|
||||
:5601CD00C2C061FCC1C3C5C78EFD708EFCC18E3191DD1291DD1BCE3101C09EFC609EFDC6C4C2C061FC303EF7FCBD0500CE3102EFE83040F7FCBD0500EFDCC1C3C5C78EFD708EFCC1FC680800C09EFC609EFDC6C4C2C061FC61FC59
|
||||
:FF02230016C80300AEF82761D339315E12F643DD27BBBC02BC04BC06BC08BC0ABC0CBC0EBC10BC12BC14BC16BC18BC1ABC1CBC1E3704200037B3EFD6AEF847DD06F6BBA7A7EFF5D7717AFAFC9B0600FCB60600FC360800EFFA717AFAD7F57700FCB50200FCA40200FC230400FC480400FC690500FCC40500FC0E0400F57800D7717BFAEFD836A1FFCEA00071F2714BA4F5F3007183D78EA8D7FCD00400E7301BF7FC200500F51AF7D74C04DF0DD51BF7DF05CF1AF702D7E51AF7D720068F1AF798030CFEDD3691DD4591DF3FE925F78F24F7614B61C8EEEE0073D91BF760181CF783639F24F760318E0232F7BF32F7440001DC170401FFBF32F7EF0F401BF75561E8EEE7
|
||||
:FF032200B5008803819F1AF7EEAF008F1BF79800F19802318E12312D14311C13050458F71688004DDD0B88028198024C03DCE4EF2A17A114F524F78998049F25F78800318EB800BF32F71704040016A5AB16BF26F789D18803DF06819F1AF7EF540C029F1AF7F1980288047088026148DE27318E0714880273891828F7C2C389318E0312440001DC040401FF12BF32F78802819802C0C3EFD088047388007CFF1828F7318EBF32F78804318E12A33028F7FC38050088024C0361F8E51AF7E7301BF71006EC20050051FF7F32F772318EBF32F7624F1BF7DFE2E51AF7F172614BDED9318E0226F714291CF7998262EFEE36E4FF7182710BE0710AEC710AE87183D7CEABE8
|
||||
:FF042100ACD7346000CD01E0CD0503CA00FDCA0E7FCA1603CE20FFCE211FCE22FFCE23FFCE25FCCE2EFFD736F00030330071A200000000BC36347000AAB4086C0308BAB4710AE5710BE1711AE5711BE1712AE5712BE1710AED710AE9711AED711AE9712AED712AE9302200BAA0309780BAA8C910009A89718A99300700BA9A302201BAA2309744BAAAC912009AAAB8086C0108BAB8AAC4BAC4AABA086C0108BABA51026F21FF9E216A010451FB5F21FF9E21D7342201AA06086C0108BA06AA08086C0108BA08A9086C0308B9710BE1711BE1712BE1710BE5711BE5712BE5D7342401710AE5711AE5712AE5A9086C0308B9AA06085CFE08BA06710BE1711BE1712BE1D7BF
|
||||
:FF05200014136168DF04308100D7F6BF3AF713BF3CF715BF38F7F6D714136168DF04308100D736E5FF15BF34F713BF36F77182EB34F7899D10A234F7B236F77183F6D7ECDA0200D7D7ECC8020030100004E0001634100071D2CE3000712AE6712BE2712AEE712AEA51036F22FF9E22CE3008CE32A0CA0000CA01FFCA0200CE3101710A30D7712BE2712BE6717A30D7717B30712AE6712BE2D7710A30D7710B30D714AD1E316EB9D734F00036F000F67182BAC630FF0ABAC4714AE6714BE2715AE6715BE2717AE5717BE1716AE6716BE2717AE6717BE2712AE6712BE2717AE7717BE3710AD4710BD0711AD4711BD0712AD4712BD0714AEE714AEA715AEE715AEAF6BAA0EC
|
||||
:FF061F00C918BF5DAAC8085CFE08BAC8AACA085CFE08BACAF6BAA2C91A5F09AACE085CFD08BACEAACC085CFD08BACCAAC8085CFD08BAC8AACA085CFD08BACAD734B201714BE2714BE6A9086C0108B9D734B401A9086C0108B9714AE6714BE2D734B201715BE2715BE6A9086C0208B9D734B401A9086C0208B9715AE6715BE2D7FCDD0800FC5B0600FCA10500FCB50500FC7B0600710201ECB80200C7F19800318E12311CF6786AF78800731984F700836398004C0DDFE8C0D78F02F773316A709F4CF763314A5C039F4DF760FCB609008F4DF7ECE709002004F1EF4F819802FCF508007291DF298800318E148800730984F7D1DF1B1501B800046AF714A9A1B9440700BB
|
||||
:FF071E00DC201984F701C2C3300600EF12D2DF1288007388001984F700318E12311CF6786AF788024C0DDD049800EFAD1004D74C0EDE0D73D3DD090984F7D1E161F8F1D7F1D7C7510DFEE7FF718C3646F7510571C1FEDBFF98005106FED4FF708800733118606163635C037051FC5F45F761089F45F75103FEB8FF98005104FEB1FF708800733118606163635C037051FC5F44F761089F44F75107FE95FF98005108FE8EFF7051F35F44F77388006101616831295C0C610B9F44F75109FE73FF9800510BFE6CFF7051CF5F44F77388006101616831495C30610B9F44F7510AFE51FF9800510CFE4AFF7051CF5F45F77388006101616831495C30610B9F45F7F1730944D5
|
||||
:FF081D00F7180AF783634C08DFF3E1FE22FF5102FE1DFFCF12F7F0C0D74051F701DF09F551F7FEB0FEFE1BFF4052F701DF06F552F7FE83FE4055F701DF07F555F7FC1F04004056F70161F8F556F7D7A24EF7E550F7AF4EF7320500FC1A0A00F74361F8E551F7AF4EF7520AFC1A0A00F74361F8E552F7AF4EF75214FC1A0A00F74361F8E553F7AF4EF75232FC1A0A00F74361F8E554F7AF4EF75264FC1A0A00F74361F8E555F7AF4EF732E803FC1A0A00F74361F8E556F7AF4EF74460EADC04F6BF4EF7D7D7D7141304E2FF45DE0C13041E0045E161E3F1318ED7F6D791DD2991DD3691DD4391DD4691DD4991DD4F91DD5291DD5591DD5691DD6391DD7091DD7D9161F82B
|
||||
:FE091C00EE8700F1D7AF3EF732FF01FEB5FFF743E161F8F1D7AF3EF732B802FEA5FFF743E161F8F1D78D01314AEF0A8D01313AEF048D00311A5C017C01D78D02312AEFF58D0E317AEFF18D02EFE3AF40F7321E00FE70FFF743E161F8F1D7AF40F732B300FE60FFF743E161F8F1D7AF40F7323101FE50FFF743E161F8F1D7AF40F732FF01FE40FFF743E161F8F1D7AF40F732B802FE30FFF743E161F8F1D7D1DD0A91DD2191DD1591DD0BD73601FF71D271E271F2D73601FF71D3EFF43601FF71D371E3EFED3601FF71D371E371F3D7D1DD0A91DD2291DD1691DD0CD73605FF71927182710203D73605FF7193EFF33605FF71937183EFEC3605FF71937183710303D7C9
|
||||
:290A1A0014F64315DD2261DD717BFACFE80080BEF013BEF6F6BEF2BEF4CFE800818FE8003103FAAFE00061CDD7B9
|
||||
:00000001FF
|
||||
|
@ -1,14 +1,13 @@
|
||||
QualityReport
|
||||
2023年11月18日 20:40:48
|
||||
2023年11月18日 22:13:13
|
||||
|
||||
------ Start build(lin_test, DefaultBuild) ------
|
||||
C:\Program Files (x86)\Renesas Electronics\CS+\CC\CC-RL\V1.11.00\Bin\ccrl.exe r_cg_port.c -cpu=S2 -o DefaultBuild\r_cg_port.obj "-dev=C:\Program Files (x86)\Renesas Electronics\CS+\CC\Device\RL78\Devicefile\DR5F103AA.DVF" -g -g_line -I . -I user -c -msg_lang=english
|
||||
C:\Program Files (x86)\Renesas Electronics\CS+\CC\CC-RL\V1.11.00\Bin\ccrl.exe r_cg_timer.c -cpu=S2 -o DefaultBuild\r_cg_timer.obj "-dev=C:\Program Files (x86)\Renesas Electronics\CS+\CC\Device\RL78\Devicefile\DR5F103AA.DVF" -g -g_line -I . -I user -c -msg_lang=english
|
||||
C:\Program Files (x86)\Renesas Electronics\CS+\CC\CC-RL\V1.11.00\Bin\ccrl.exe user\appTask.c -cpu=S2 -o DefaultBuild\appTask.obj "-dev=C:\Program Files (x86)\Renesas Electronics\CS+\CC\Device\RL78\Devicefile\DR5F103AA.DVF" -g -g_line -I . -I user -c -msg_lang=english
|
||||
C:\Program Files (x86)\Renesas Electronics\CS+\CC\CC-RL\V1.11.00\Bin\rlink.exe -subcommand=DefaultBuild\lin_test.clnk
|
||||
W0561017:The evaluation period of CC-RL V1 has expired. Please consider purchasing the product.
|
||||
RAMDATA SECTION: 00000088 Byte(s)
|
||||
ROMDATA SECTION: 000000cd Byte(s)
|
||||
PROGRAM SECTION: 00000868 Byte(s)
|
||||
RAMDATA SECTION: 00000090 Byte(s)
|
||||
ROMDATA SECTION: 000000c7 Byte(s)
|
||||
PROGRAM SECTION: 00000975 Byte(s)
|
||||
W0561017:The evaluation period of CC-RL V1 has expired. Please consider purchasing the product.
|
||||
Renesas Optimizing Linker Completed
|
||||
------ Build ended(Error:0, Warning:2)(lin_test, DefaultBuild) ------
|
||||
@ -65,8 +64,8 @@ DefaultBuild\lin_test.clnk :
|
||||
|
||||
|
||||
--- SHA1 hash value of output files ---
|
||||
E:\workspace\K74\K74B\CODE\K74B\DefaultBuild\lin_test.abs: bba7b0d60dee8c2bf9f2ec8381b565d0377cc872
|
||||
E:\workspace\K74\K74B\CODE\K74B\OUTPUT\lin_test.hex: cb527fff9facbb616ebc9be3ad171bfea2edafc1
|
||||
E:\workspace\K74\K74B\CODE\K74B\DefaultBuild\lin_test.abs: db69cc55ae92614fa40d676cd7c7a8935a1a461d
|
||||
E:\workspace\K74\K74B\CODE\K74B\OUTPUT\lin_test.hex: 82fb5639bd869139b2e8b5cff81bfcf21edd6f93
|
||||
|
||||
|
||||
--- System Information ---
|
||||
@ -94,13 +93,13 @@ E:\workspace\K74\K74B\CODE\K74B\OUTPUT\lin_test.hex: cb527fff9facbb616ebc9be3ad1
|
||||
C:\Program Files (x86)\Renesas Electronics\CS+\CC
|
||||
*Memory Usage
|
||||
*Private Working Set
|
||||
208 MB
|
||||
256 MB
|
||||
*Number of GDI Objects
|
||||
2144
|
||||
2255
|
||||
*Number of USER Objects
|
||||
1113
|
||||
1250
|
||||
*Opened Files
|
||||
1 editors, 1 files, 5 KB
|
||||
3 editors, 3 files, 10 KB
|
||||
|
||||
--- Build Tool Plug-in Information ---
|
||||
RH850 Build tool CC-RH Plug-in
|
||||
|
@ -22,7 +22,6 @@ void UARTLIN_Init(void)
|
||||
//间隔场中断处理
|
||||
void UARTLIN_Break_Handle(uint8_t flag)
|
||||
{
|
||||
//OUT_BL_CTRL = 1;
|
||||
if (flag == 0X04)
|
||||
{
|
||||
if (lin_rxdata == 0x00)
|
||||
@ -46,7 +45,7 @@ void UARTLIN_Rx_Handle(void)
|
||||
switch (lin_state)
|
||||
{
|
||||
case LIN_STATE_BREAK:
|
||||
if (lin_rxdata = 0x55)
|
||||
if (lin_rxdata == 0x55)
|
||||
{
|
||||
lin_state++;
|
||||
|
||||
@ -86,9 +85,8 @@ void UARTLIN_Rx_Handle(void)
|
||||
}
|
||||
rxchecksum ^= 0xff;
|
||||
rxchecksum &= 0xff;
|
||||
txbuf[rxlen] = rxchecksum;
|
||||
txbuf[rxlen] = (uint8_t)rxchecksum;
|
||||
R_UART0_Send(txbuf,rxlen+1);
|
||||
//OUT_BL_CTRL = 1;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
File diff suppressed because one or more lines are too long
1111
K74B/lin_test.mtpj
1111
K74B/lin_test.mtpj
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,10 +1,11 @@
|
||||
#include "lin_user.h"
|
||||
|
||||
uint8_t g_rxbuf[8],g_txbuf[8];
|
||||
uint8_t g_rxbuf[8],g_txbuf1[8],g_txbuf2[8];
|
||||
|
||||
//加const报错
|
||||
MSGTYPE LIN_cfg_arr[MSG_NUM] =
|
||||
{ //PID LEN DIR BUFFER
|
||||
{0x50,8,MSG_DIR_RX,g_rxbuf},
|
||||
{0x99,8,MSG_DIR_TX,g_txbuf}
|
||||
{0x00,2,MSG_DIR_RX,g_rxbuf},
|
||||
{0x08,8,MSG_DIR_TX,g_txbuf1},
|
||||
{0x08,2,MSG_DIR_TX,g_txbuf2},
|
||||
};
|
@ -4,9 +4,9 @@
|
||||
#include "r_cg_macrodriver.h"
|
||||
|
||||
//config
|
||||
#define MSG_NUM 2
|
||||
#define MSG_NUM 3
|
||||
|
||||
extern uint8_t g_rxbuf[8],g_txbuf[8];
|
||||
extern uint8_t g_rxbuf[8],g_txbuf1[8],g_txbuf2[];
|
||||
|
||||
|
||||
|
||||
|
@ -18,10 +18,7 @@
|
||||
#define SIGID_KEY11 11
|
||||
#define SIGID_KEY12 12
|
||||
#define SIGID_KEY13 13
|
||||
#define SIGID_KEY14 14
|
||||
#define SIGID_KEY15 15
|
||||
#define SIGID_KEY16 16
|
||||
#define KEY_NUM 16
|
||||
#define KEY_NUM 13
|
||||
|
||||
#if BOARDCFG == LEFT_BOARD
|
||||
#define IN_KEY1 P4_bit.no2
|
||||
@ -39,17 +36,21 @@
|
||||
#define ADCH_KEYAD2 1
|
||||
|
||||
#else
|
||||
#define IN_KEY1 P1_bit.no1
|
||||
#define IN_KEY2 P13_bit.no7
|
||||
#define IN_KEY3 P12_bit.no2
|
||||
#define IN_KEY4 P12_bit.no1
|
||||
#define IN_KEY5 P1_bit.no2
|
||||
#define IN_KEY6 P1_bit.no3
|
||||
#define IN_KEY7 P1_bit.no4
|
||||
#define IN_KEY8 P1_bit.no0
|
||||
#define IN_KEY3 P1_bit.no4
|
||||
#define IN_KEY4 P1_bit.no3
|
||||
#define IN_KEY5 P0_bit.no1
|
||||
#define IN_KEY6 P2_bit.no2
|
||||
#define IN_KEY7 P14_bit.no7
|
||||
#define IN_KEY8 P2_bit.no3
|
||||
|
||||
#define OUT_BL_CTRL P2_bit.no3
|
||||
#define OUT_LINEN P4_bit.no2
|
||||
|
||||
#define OUT_LINEN P1_bit.no0
|
||||
#define OUT_LED1 P1_bit.no5
|
||||
#define OUT_LED2 P1_bit.no6
|
||||
#define OUT_LED3 P1_bit.no7
|
||||
#define OUT_LED4 P5_bit.no1
|
||||
#define OUT_LED5 P5_bit.no0
|
||||
#define OUT_LED6 P3_bit.no0
|
||||
|
||||
#define ADCH_KEYAD1 1
|
||||
#define ADCH_KEYAD2 0
|
||||
|
@ -10,13 +10,39 @@
|
||||
#include "lin_user.h"
|
||||
#include "UARTLIN_Drv.h"
|
||||
#include "PINdef.h"
|
||||
uint8_t g_rx_buf[3];
|
||||
#include "r_cg_wdt.h"
|
||||
|
||||
extern uint16_t g_AdVal[3];
|
||||
|
||||
static uint16_t keydelay[KEY_NUM]={0};
|
||||
static uint8_t keyflag[KEY_NUM]={0};
|
||||
|
||||
typedef struct
|
||||
{
|
||||
//BYTE 0
|
||||
uint8_t HG:2;//滑轨
|
||||
uint8_t KB:2;//靠背
|
||||
uint8_t TZ:2;//头枕
|
||||
uint8_t REVERSE01:2;
|
||||
//BYTE 1
|
||||
uint8_t TT:2;
|
||||
uint8_t REVERSE11:2;
|
||||
uint8_t ZY:2;
|
||||
uint8_t REVERSE12:2;
|
||||
//BYTE 2
|
||||
uint8_t REVERSE21:4;
|
||||
uint8_t FW:1;//复位
|
||||
uint8_t REVERSE22:3;
|
||||
//3-7
|
||||
uint8_t REVERSE3;
|
||||
uint8_t REVERSE4;
|
||||
uint8_t REVERSE5;
|
||||
uint8_t REVERSE6;
|
||||
uint8_t REVERSE7;
|
||||
}LIN_MSG_TYPE;
|
||||
|
||||
LIN_MSG_TYPE LIN_msg_buf;
|
||||
|
||||
void HardWare_Init(void)
|
||||
{
|
||||
IO_Init();
|
||||
@ -28,7 +54,6 @@ void HardWare_Init(void)
|
||||
R_ADC_Set_OperationOn();
|
||||
R_TAU0_Channel1_Start();
|
||||
|
||||
//OUT_BL_CTRL = 1;
|
||||
OUT_LINEN = 1;
|
||||
UARTLIN_Init();
|
||||
}
|
||||
@ -44,22 +69,14 @@ void Variable_Init(void)
|
||||
|
||||
}
|
||||
|
||||
|
||||
uint8_t datacount=0;
|
||||
uint8_t RxTimeoutCount=0;
|
||||
static uint8_t Rxdata[10];
|
||||
uint8_t RxFlag=0;
|
||||
|
||||
void keyLogic(uint8_t keyno)
|
||||
uint8_t fan_state,heat_state;
|
||||
void LED_Ctrl(void)
|
||||
{
|
||||
|
||||
switch (keyno)
|
||||
{
|
||||
fan_state = (g_rxbuf[0]&0xc0)>>6;
|
||||
heat_state = (g_rxbuf[0]&0x30)>>4;
|
||||
FanLED_Ctrl(fan_state);
|
||||
HeatLED_Ctrl(heat_state);
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#define KEY_DELAY_TIME 6
|
||||
@ -91,31 +108,43 @@ void keyScan(void)//5ms
|
||||
|
||||
}
|
||||
|
||||
extern uint8_t g_txbuf[8];
|
||||
uint8_t GetKeyFlag(uint8_t keyid)
|
||||
{
|
||||
if (keyid > 0 && keyid <= KEY_NUM)
|
||||
{
|
||||
return keyflag[keyid]?1:0;
|
||||
}
|
||||
else
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
extern uint8_t g_txbuf1[8];
|
||||
void TxMsgPro(void)
|
||||
{
|
||||
uint8_t temp1=0,temp2=0,i;
|
||||
uint8_t temp=0,i;
|
||||
LIN_msg_buf.FW = GetKeyFlag(SIGID_KEY13);
|
||||
LIN_msg_buf.TT = GetKeyFlag(SIGID_KEY5)<<1|GetKeyFlag(SIGID_KEY6);
|
||||
LIN_msg_buf.HG = GetKeyFlag(SIGID_KEY3)<<1|GetKeyFlag(SIGID_KEY4);
|
||||
LIN_msg_buf.KB = GetKeyFlag(SIGID_KEY7)<<1|GetKeyFlag(SIGID_KEY8);
|
||||
LIN_msg_buf.TZ = GetKeyFlag(SIGID_KEY9)<<1|GetKeyFlag(SIGID_KEY11);
|
||||
LIN_msg_buf.ZY = GetKeyFlag(SIGID_KEY10)<<1|GetKeyFlag(SIGID_KEY12);
|
||||
for (i = 0; i < 8; i++)
|
||||
{
|
||||
temp1<<=1;
|
||||
temp2<<=1;
|
||||
if (keyflag[i])
|
||||
{
|
||||
temp1 |= 0x01;
|
||||
}
|
||||
if (keyflag[i+8])
|
||||
{
|
||||
temp2 |= 0x01;
|
||||
}
|
||||
g_txbuf1[i] = ((uint8_t *)(&LIN_msg_buf))[i];
|
||||
}
|
||||
g_txbuf[0] = temp1;
|
||||
g_txbuf[1] = temp2;
|
||||
|
||||
temp = 0xf0;
|
||||
temp |= GetKeyFlag(SIGID_KEY1)<<4;
|
||||
temp |= GetKeyFlag(SIGID_KEY2)<<5;
|
||||
g_txbuf2[0] = temp;
|
||||
}
|
||||
|
||||
void AppTask(void)
|
||||
{
|
||||
static uint8_t ledno = 1,last = 0;
|
||||
|
||||
if (TimeBase5msFlag == 1)
|
||||
{
|
||||
TimeBase5msFlag = 0;
|
||||
@ -127,6 +156,7 @@ void AppTask(void)
|
||||
if (TimeBase10msFlag == 1)
|
||||
{
|
||||
TimeBase10msFlag = 0;
|
||||
LED_Ctrl();
|
||||
}
|
||||
|
||||
if (TimeBase100msFlag == 1)
|
||||
|
@ -11,12 +11,7 @@
|
||||
|
||||
void IO_Init(void)
|
||||
{
|
||||
#if BOARDCFG == RIGHT_BOARD
|
||||
PM4_bit.no2 = IO_OUTPUT;
|
||||
PM1_bit.no4 = IO_INPUT;
|
||||
PM2_bit.no3 = IO_OUTPUT;
|
||||
PM1_bit.no2 = IO_INPUT;
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
void Output_Ctrl(uint8_t state)
|
||||
@ -34,6 +29,7 @@ isKeyMatchAd(uint16_t val,uint16_t match)
|
||||
return 0;
|
||||
}
|
||||
|
||||
#define KEY_AD_V0 30
|
||||
#define KEY_AD_V1 179
|
||||
#define KEY_AD_V2 305
|
||||
#define KEY_AD_V3 511
|
||||
@ -45,71 +41,101 @@ uint8_t GetKeyState(uint8_t keyno)
|
||||
switch (keyno)
|
||||
{
|
||||
case SIGID_KEY1:
|
||||
return IN_KEY1?0:1;
|
||||
break;
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD2],KEY_AD_V3)?1:0;
|
||||
case SIGID_KEY2:
|
||||
return IN_KEY2?0:1;
|
||||
break;
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD2],KEY_AD_V4)?1:0;
|
||||
case SIGID_KEY3:
|
||||
return IN_KEY3?0:1;
|
||||
break;
|
||||
case SIGID_KEY4:
|
||||
return IN_KEY4?0:1;
|
||||
break;
|
||||
case SIGID_KEY5:
|
||||
return IN_KEY5?0:1;
|
||||
break;
|
||||
case SIGID_KEY6:
|
||||
return IN_KEY6?0:1;
|
||||
break;
|
||||
case SIGID_KEY7:
|
||||
return IN_KEY7?0:1;
|
||||
break;
|
||||
case SIGID_KEY8:
|
||||
return IN_KEY8?0:1;
|
||||
break;
|
||||
case SIGID_KEY9:
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD1],KEY_AD_V1)?1:0;
|
||||
break;
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD1],KEY_AD_V0)?1:0;
|
||||
case SIGID_KEY10:
|
||||
#if BOARDCFG == LEFT_BOARD
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD1],KEY_AD_V2)?1:0;
|
||||
#else
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD1],KEY_AD_V3)?1:0;
|
||||
#endif
|
||||
break;
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD1],KEY_AD_V1)?1:0;
|
||||
case SIGID_KEY11:
|
||||
#if BOARDCFG == LEFT_BOARD
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD1],KEY_AD_V3)?1:0;
|
||||
#else
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD1],KEY_AD_V2)?1:0;
|
||||
#endif
|
||||
break;
|
||||
case SIGID_KEY12:
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD1],KEY_AD_V4)?1:0;
|
||||
break;
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD1],KEY_AD_V3)?1:0;
|
||||
case SIGID_KEY13:
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD2],KEY_AD_V1)?1:0;
|
||||
break;
|
||||
case SIGID_KEY14:
|
||||
#if BOARDCFG == LEFT_BOARD
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD2],KEY_AD_V2)?1:0;
|
||||
#else
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD2],KEY_AD_V3)?1:0;
|
||||
#endif
|
||||
break;
|
||||
case SIGID_KEY15:
|
||||
#if BOARDCFG == LEFT_BOARD
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD2],KEY_AD_V3)?1:0;
|
||||
#else
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD2],KEY_AD_V2)?1:0;
|
||||
#endif
|
||||
break;
|
||||
case SIGID_KEY16:
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD2],KEY_AD_V4)?1:0;
|
||||
break;
|
||||
return isKeyMatchAd(g_AdVal[ADCH_KEYAD1],KEY_AD_V4)?1:0;
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#define LED_OFF 1
|
||||
#define LED_ON 0
|
||||
|
||||
#define LEDF1 OUT_LED1
|
||||
#define LEDF2 OUT_LED2
|
||||
#define LEDF3 OUT_LED3
|
||||
|
||||
#define LEDH1 OUT_LED4
|
||||
#define LEDH2 OUT_LED5
|
||||
#define LEDH3 OUT_LED6
|
||||
|
||||
void FanLED_Ctrl(uint8_t state)
|
||||
{
|
||||
switch (state)
|
||||
{
|
||||
case 0:
|
||||
LEDF1 = LED_OFF;
|
||||
LEDF2 = LED_OFF;
|
||||
LEDF3 = LED_OFF;
|
||||
break;
|
||||
case 3:
|
||||
LEDF1 = LED_ON;
|
||||
LEDF2 = LED_OFF;
|
||||
LEDF3 = LED_OFF;
|
||||
break;
|
||||
case 2:
|
||||
LEDF1 = LED_ON;
|
||||
LEDF2 = LED_ON;
|
||||
LEDF3 = LED_OFF;
|
||||
break;
|
||||
case 1:
|
||||
LEDF1 = LED_ON;
|
||||
LEDF2 = LED_ON;
|
||||
LEDF3 = LED_ON;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
void HeatLED_Ctrl(uint8_t state)
|
||||
{
|
||||
switch (state)
|
||||
{
|
||||
case 0:
|
||||
LEDH1 = LED_OFF;
|
||||
LEDH2 = LED_OFF;
|
||||
LEDH3 = LED_OFF;
|
||||
break;
|
||||
case 3:
|
||||
LEDH1 = LED_ON;
|
||||
LEDH2 = LED_OFF;
|
||||
LEDH3 = LED_OFF;
|
||||
break;
|
||||
case 2:
|
||||
LEDH1 = LED_ON;
|
||||
LEDH2 = LED_ON;
|
||||
LEDH3 = LED_OFF;
|
||||
break;
|
||||
case 1:
|
||||
LEDH1 = LED_ON;
|
||||
LEDH2 = LED_ON;
|
||||
LEDH3 = LED_ON;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -10,5 +10,7 @@
|
||||
uint8_t GetKeyState(uint8_t keyno);
|
||||
void Output_Ctrl(uint8_t state);
|
||||
void IO_Init(void);
|
||||
void FanLED_Ctrl(uint8_t state);
|
||||
void HeatLED_Ctrl(uint8_t state);
|
||||
|
||||
#endif
|
||||
|
Loading…
x
Reference in New Issue
Block a user