Chip switch for Lincolns

A forum for the discussion of matters of a technical nature. All such activities are undertaken at the readers discretion and own risk. If you don't know what you are doing, don't blame us if it all goes wrong!
steepeljack69
Super Member
Super Member
Posts: 177
Joined: 07 Jan 2015, 16:06
Call Sign: 26SF333
Location: Leeds 18

Re: Chip switch for Lincolns

Post by steepeljack69 » 07 Feb 2019, 10:55

Sounds good,please if and when u can let us know how u go on.Thanks

lbcomms
Super Member
Super Member
Posts: 297
Joined: 04 Oct 2015, 08:10
Location: Sydney, Australia

Re: Chip switch for Lincolns

Post by lbcomms » 07 Feb 2019, 19:24

I've put the word out to a few regulars that we are after one, and will also keep checking the local eBay and Gumtree. Could be a while, those radios are rare down here, but one should turn up eventually...

Techquest
Super Member
Super Member
Posts: 148
Joined: 17 Oct 2011, 21:09
Call Sign: 29VLF125
Location: Carlow Ireland

Re: Chip switch for Lincolns

Post by Techquest » 07 Feb 2019, 22:06

LCD driver IC is programmable i Have/had the data sheet somewhere if i can find it i'll post it.
there is a data dump somewhere on the forum here otter and RD250 were talking before about the same project.
if you do a lincoln data dump search it will list all the posts.
Techquest AKA Jedi
Av101 Astro Plane Old Imax n Loads of Radios
Mmmmmmmmmmm ADAMS n other Presidents

User avatar
cb4ever104
Veteran
Veteran
Posts: 4665
Joined: 28 Jul 2011, 21:26
Location: Alicante , España

Re: Chip switch for Lincolns

Post by cb4ever104 » 08 Feb 2019, 11:59

I spoke to Tim , Otter , and he said that he'd emailed Sue the datasheet that she was looking for.
30TM060
Paul aka "Sammy". (108) PY60 Old Paisley DX Group (RIP Rab Markie)
Ex GM0 , now EA5 .
Handle "Fortune Hunter" back in "the day"
Radios ....? Anything that says "TAIWAN R.O.C" on the back.

lbcomms
Super Member
Super Member
Posts: 297
Joined: 04 Oct 2015, 08:10
Location: Sydney, Australia

Re: Chip switch for Lincolns

Post by lbcomms » 08 Feb 2019, 13:53

No emails received as of 10 minutes ago, will check again in a few hours.

We managed to find the datasheet and someone else (ch25) let us know an equivalent part number that was easier to find the info on.
So the datasheet isn't an issue, it's working out what mode the chip runs in (it can operate different ways to suit different display types) and the segment mapping (what data bits turn on what segments of the display) that would be nice to have if anyone has that information. Nothing that can't be worked out with a bit of experimentation though, it would just save an hour or three if we had it.

Found 2 radios but neither was suitable - one was a Realistic branded cut down version with no LSB, AM or FM (on eBay Oz now) and the other already had a chipswitch and lots of other mods like an echo unit and different color LEDs (scary to think what horrors might lie inside that one). So it's keep on looking...

User avatar
cb4ever104
Veteran
Veteran
Posts: 4665
Joined: 28 Jul 2011, 21:26
Location: Alicante , España

Re: Chip switch for Lincolns

Post by cb4ever104 » 09 Feb 2019, 21:33

lbcomms wrote:
08 Feb 2019, 13:53
No emails received as of 10 minutes ago, will check again in a few hours.
Send me a PM Sue with your email address , and I'll pass on what I have .

Paul
30TM060
Paul aka "Sammy". (108) PY60 Old Paisley DX Group (RIP Rab Markie)
Ex GM0 , now EA5 .
Handle "Fortune Hunter" back in "the day"
Radios ....? Anything that says "TAIWAN R.O.C" on the back.

User avatar
Otter
Veteran
Veteran
Posts: 2721
Joined: 04 Apr 2008, 21:42
Call Sign: 26TM439

Re: Chip switch for Lincolns

Post by Otter » 11 Feb 2019, 09:27

Info for Sue, who doesn't seem to be receiving my emails.
This is taken from my working code, and is the LCD setup.

void LCD_Lincoln_Initialise (void)
{
UINT8 u8Count;
const UINT8 u8aLCD_INIT[]={0x40,0x20,0x00,0x30,0x14,0x11,0x1A}; // 0x40 = 1/4 Duty Cycle, 1/3 Bias, Freq = 1/2^7
// 0x20 = Clear data memory
// 0x00 = Clear blinking data memory
// 0x30 = Unsynchronised transfer
// 0x14 = No Segment Decoder
// 0x11 = Display on
// 0x1A = Blinking on, Freq = (Fosc/2^17)Hz
LCD_LINCOLN_CS = 0;
LCD_LINCOLN_C_D = 1; // Sending commands
__delay_us(6); // Will take 5us for busy line to be asserted
for (u8Count = 0; u8Count < sizeof(u8aLCD_INIT); u8Count++)
{
LCD_Lincoln_Send_Byte(u8aLCD_INIT[u8Count]);
}
__delay_us(4); // 2us of the 5 required were used in Send_Byte
while (LCD_LINCOLN_BUSY == LCD_BUSY){} // Wait for busy line to be released
LCD_LINCOLN_CS = 1;
__delay_us(16);
}

// Definition of letters for the LCD a G H J L n P r t U u y
UINT8 const LCD_LETTERS [] = {0xE7,0xB7,0x76,0x86,0xD0,0x64,0x73,0x60,0xF0,0xD6,0xC4,0xB6};
UINT8 const LCD_NUMBERS [] = {0xD7,0x06,0xE3,0xA7,0x36,0xB5,0xF5,0x07,0xF7,0x37,0x77,0xF4,0xD1,0xD6,0xF1,0x71}; // Turns number from 0-F into its LCD character

void display_menu_99 (UINT8 u8Value);

//----------------------------------------------------------------------------------
// FUNCTION: display_band_channel
//
// PARAMETERS:
//
// DESCRIPTION: u8Channel == 0xFF blanks the channel number
//
// RETURNS:
//
//----------------------------------------------------------------------------------
void display_band_channel (INT8 u8Band, UINT8 u8Channel)
{
LCD_OUTPUT_ARRAY[9] = u8Band; // Send band letter to small LCD

if (u8Channel == 0xFF)
{
if ((ug8CS_band == 0) && (ug8Country_Selection == CMODE_CHIPSWITCH) && (ug8CS_options & CS_OPT_SCAN_LIM))
{
LCD_OUTPUT_ARRAY[7] = 0x80; // Should be underline in the 1s position
LCD_OUTPUT_ARRAY[8] = 0;
}
else
{
LCD_OUTPUT_ARRAY[7] = 0;
LCD_OUTPUT_ARRAY[8] = 0;
}
}
else
{
LCD_OUTPUT_ARRAY[7] = LCD_NUMBERS [u8Channel & 0x0F];
u8Channel = u8Channel >> 4;
if (u8Channel == 0) LCD_OUTPUT_ARRAY[8] = 0; // Need to do this to stop leading zero from showing
else LCD_OUTPUT_ARRAY[8] = LCD_NUMBERS [u8Channel];
}
LCD_Lincoln_Send_Array(21,4);

}
"To this day the words Stirling bridge conjour pride in every Scotsman's heart, while to an Englishman those same words conjour literally no feelings at all." - Cunk on Britain S1 E1
Gorgon Brown - a man with all the joie de vivre of a haunted cave in Poland. S1 E3

lbcomms
Super Member
Super Member
Posts: 297
Joined: 04 Oct 2015, 08:10
Location: Sydney, Australia

Re: Chip switch for Lincolns

Post by lbcomms » 11 Feb 2019, 12:04

THANK YOU VERY MUCH :) :) :)

That post just saved me a ton of work (and possibly a cooked LCD), especially the first "initialise" part.

Not sure why I'm not getting emails from you, Sammy and one other user here have sent me recent messages, like the datasheet to the original LCD driver IC just a few days ago.

Thanks again, looking forward to having a crack at this one as soon as we find a suitable donor radio to turn into a dev unit.

Just out of interest though, what MCU were you using? Given the simplicity and age of the circuit, nothing too special or fast would be needed there. Current thinking for our attempt will be a common Atmel / Microchip ATMega328 mounted on a small adapter board that replaces the existing 64 pin DIP.

User avatar
Otter
Veteran
Veteran
Posts: 2721
Joined: 04 Apr 2008, 21:42
Call Sign: 26TM439

Re: Chip switch for Lincolns

Post by Otter » 11 Feb 2019, 13:49

My current code is on a PIC 18. I had been thinking of changing it to one of the newer PIC16s to save cost. Maybe my address for you is old - it's a rocketmail one?
"To this day the words Stirling bridge conjour pride in every Scotsman's heart, while to an Englishman those same words conjour literally no feelings at all." - Cunk on Britain S1 E1
Gorgon Brown - a man with all the joie de vivre of a haunted cave in Poland. S1 E3

lbcomms
Super Member
Super Member
Posts: 297
Joined: 04 Oct 2015, 08:10
Location: Sydney, Australia

Re: Chip switch for Lincolns

Post by lbcomms » 11 Feb 2019, 19:32

That's the correct one, had it for a long time now. Been waiting for it to become a spam magnet for the last 5 years or more but it hasn't happened so I kept it for forum and other non-work stuff.

I'll look at which MCU to use for ours when we find a radio, the '328 might not have enough I/O lines. Might have to use a larger one (644) or an expander like a 23017 (16 lines and can generate an interrupt when one of them changes), early days yet. It will be an Atmel AVR though...

Post Reply

Who is online

Users browsing this forum: Google [Bot] and 7 guests