To make some sense of this schematic is helpful to look at the photo of the front panel circuit board.To conclude, something is wrong with schematic
The Original Poster is trying to repair the front panel and found the PIC16F870 does not seem to work.are you sure the problem is with the PIC ?
The direct link to the only (so far) source code file is:Hi, I see the files but not sure what to even download! I have taken some shots of the PCB front and back. I can zoom into certain areas on request.
I did receive a reply from Phil, he has no code and no service manual. He has stated he fixes these from just experience.
Please note the Chip is removed and I have the original and a new replacement. If I am able to I can hook up my USB PSU to the board and power it up. However last time I tried that the MUTE LED did not light , this is without the chip fitted and ribbon cable from amplifier.
I suspect that you may be having too many issues setting up the Microchip tools to build the code I created.Thank you all for all the information. I will attempt to follow this tomorrow and report back. Good night!
:020000040000FA
:020000000A28CC
:10000800FE00030EF0000A08F10016290B288301F0
:100018000D28FA01F701F901032180308316031333
:10002800860060308700C820F5007508F800780859
:100038007A06031927287808F5007508FA0014309D
:10004800F5007508F9007908031931280130F9021B
:100058007908031D3128F701F70A7708031D892855
:10006800C02883120313061C3D288030F50075084C
:1000780087064130F500750886050614A528831201
:100088000313861C4B288030F5007508870642301C
:10009800F500750886058614A52883120313061D26
:1000A80059288030F500750887064430F500750832
:1000B80086050615A52883120313861D6728803038
:1000C800F500750887064830F50075088605861519
:1000D800A52883120313061E75288030F5007508BD
:1000E80087065030F500750886050616A528831280
:1000F8000313861E83288030F50075088706603054
:10010800F500750886058616A5287A08F500F60113
:100118007608003A03199128A5287508013A0319A9
:100128003528033A03194328013A03195128073A95
:1001380003195F28013A03196D28033A03197B282C
:10014800A52807307A06031DBF284030F50075083A
:10015800831203138606061FBB28E030F5007508D6
:1001680087050608E039F50075088704BF28E030E0
:10017800F50075088705F701C730F500C328F50BAA
:10018800C228C628C7281728F401DA28F401F40A77
:10019800F9280230D6280330D6280430D62805306E
:1001A800D6280630F2007208F400F92883120313E7
:1001B80005080739F200F3017308003A0319E52826
:1001C800F9287208003A0319CA28013A0319CD28F8
:1001D800033A0319CF28013A0319D128073A03191A
:1001E800D328013A0319D528F92874080319851961
:1001F80001290730F2007208F400740808008B0126
:10020800831603138C018D01FF308500FF308600B3
:10021800FF30870006309F00831203138501860193
:100228008701080071088A00700E8300FE0E7E0E9A
:020238000900BB
:02400E00393F38
:00000001FF
Device 16F870
Xtal = 4
All_Digital = true
Reminders false
Config DEBUG_OFF, LVP_OFF, PWRTE_OFF, WDT_OFF, HS_OSC
Reminders true
Declare RC5In_Pin = PORTA.4
Input PORTA
Output PORTB
Output PORTC
Symbol IN1_LED = PORTB.0
Symbol IN2_LED = PORTB.1
Symbol IN3_LED = PORTB.2
Symbol IN4_LED = PORTB.3
Symbol IN5_LED = PORTB.4
Symbol IN6_LED = PORTB.5
Symbol REC_LED = PORTB.6
Symbol REC1_LED = PORTC.0
Symbol REC2_LED = PORTC.1
Symbol REC3_LED = PORTC.2
Symbol REC4_LED = PORTC.3
Symbol REC5_LED = PORTC.4
Symbol REC_btn = PORTA.3
Dim RC5_rcv As Word
Dim RC5_device As RC5_rcv.HighByte
Dim RC5_command As RC5_rcv.LowByte
Dim Keys As Byte
Dim Key_mask As %00000111
' Main program loop
While 1 = 1
Repeat
RC5_rcv = RC5In
Until RC5_command <> 255
PORTB = RC5_device
DelayMS 3000
PORTB = RC5_command
DelayMS 3000
Wend
Hi, Sorry I have no idea what that is! I had to watch a couple of videos just to get the PIC 3 to communicate with the software!You can find Proton Compiler here: https://pds.protonbasic.co.uk/Files/?dir=Version 3_7
Please post a photo of what you have setup to program your PIC16F870. It would help me understand what you are doing.Hi, Sorry I have no idea what that is! I had to watch a couple of videos just to get the PIC 3 to communicate with the software!
What do I do with the compiler? I also still have the chip plugged into the reader, do I just disconnect that? Thanks
/*
* Main application
*/
void main(void)
{
/*
* Initialize main application
*/
PIC_Init();
/* Set GPIO directions for S21 */
TRISB = 0b10000000;
TRISC = 0b01100000;
/*
* Application process loop
*/
while(1)
{
PollSwitches();
/*
* Initial debug code to check that we have
* the project and tools working together.
*
* The expected behavior is the (mute) light should be on.
* The (record) light should flash 2 times per second.
*
* This code will be used later to indicate a critical fault in the application .
*/
LED_REC(LED_REC_ON);
__delay_ms(250);
LED_REC(LED_REC_OFF);
__delay_ms(250);
}
}
Here you can find codes for RC5 IR protocol: https://en.wikipedia.org/wiki/RC-5Thanks for the photo, now I have a better idea how you are programming the PIC16F870.
This is the main application of the source code in my git repository:Code:/* * Main application */ void main(void) { /* * Initialize main application */ PIC_Init(); /* Set GPIO directions for S21 */ TRISB = 0b10000000; TRISC = 0b01100000; /* * Application process loop */ while(1) { PollSwitches(); /* * Initial debug code to check that we have * the project and tools working together. * * The expected behavior is the (mute) light should be on. * The (record) light should flash 2 times per second. * * This code will be used later to indicate a critical fault in the application . */ LED_REC(LED_REC_ON); __delay_ms(250); LED_REC(LED_REC_OFF); __delay_ms(250); } }
From what I can deduce from your post#32 you appear to be using the MPLABX IDE to program the PIC16F870 with a PICkit3 connected to a ZIF programming socket.
This is a fine setup.
What you should be able to get working is to program the code from my git repository in a PIC16F870.
Put that device in your front panel board and see the (mute) light on and the (record) light flashing two time per second.
When you have confirmed that this works I will update the source code in my git repository with code that should be more functional.
I want to know for certain that my test code builds correctly for you, your process for programming the controller then fitting it in the front panel board all works.
This may seem to be a very small steps but because you are so new to this I want to limit the number if things that can go wrong.
If Murphy's law holds any sway some kind of confusion will occur.
Device 16F870
Xtal = 4
All_Digital = true
Reminders false
Config DEBUG_OFF, LVP_OFF, PWRTE_OFF, WDT_OFF, HS_OSC
Reminders true
Declare RC5In_Pin = PORTA.4
Input PORTA
Output PORTB
Output PORTC
Symbol IN1_LED = PORTB.0
Symbol IN2_LED = PORTB.1
Symbol IN3_LED = PORTB.2
Symbol IN4_LED = PORTB.3
Symbol IN5_LED = PORTB.4
Symbol IN6_LED = PORTB.5
Symbol REC_LED = PORTB.6
Symbol REC1_LED = PORTC.0
Symbol REC2_LED = PORTC.1
Symbol REC3_LED = PORTC.2
Symbol REC4_LED = PORTC.3
Symbol REC5_LED = PORTC.4
Symbol REC_btn = PORTA.3
Dim RC5_rcv As Word
Dim RC5_device As RC5_rcv.HighByte
Dim RC5_command As RC5_rcv.LowByte
Dim Keys As Byte
Dim Key_mask As %00000111
Dim InButtons As Byte
Dim RecButton As Bit
' setting initial states of output pins on power up
PORTB = 1 ' CH1 initially selected
PORTC = 0
' Main program loop
While 1 = 1
GoSub CheckButtons
Wend
End
'****************************************************************
' * SUBs *
'****************************************************************
CheckButtons:
InButtons = PORTA
InButtons = ~(InButtons & Key_mask)
Select InButtons
Case 0
PORTB = %00000001
Case 1
PORTB = %00000010
Case 2
PORTB = %00000100
Case 3
PORTB = %00001000
Case 4
PORTB = %00010000
Case 5
PORTB = %00100000
End Select
RecButton = REC_btn
If RecButton = 1 Then
Toggle REC_LED
End If
Return
Would be nice ti find s picture of original remote
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?