Jump to content

Conrad

EstablishedMember
  • Content Count

    10
  • Joined

  • Last visited

Community Reputation

0 Neutral

About Conrad

  • Rank
    Newbrie
  1. A really basic question this one. I wish to have RA0 on a PIC16F877A as the only active ADC, all the rest should be outputs. How do I do it? Conrad Forgot to mention that Vref will be Vdd and 0v will be Vss.
  2. I have a VFD module that I would like to use with a PIC16F877A. The VFD in question is this one Noritake VFD module data As far as I can see I should be able to just use the TX pin (RC6) of the PIC, GND and Vdd, set the baud rate on the PIC and the module to be the same and that should be that. Does anyone have any working code? Thanks Conrad
  3. How soon will this be released Dave? I could really use this facility now I have all the support hardware for my Uni project done now apart from the PIC programming. This needs the most time as I am an inexperienced PIC programmer to say the least. As usual time is running out. Until I can get some code that will allow me to use the display on my PICDEM 2 PLUS I can't proceeed. There is an asm file that came with the demo board that I could use but I'm unsure how to go about using it in conjunction with C code. Conrad
  4. I have just changed programmers from the matrix multimedia PPP parallel port programmer to ICD2 and wondered how I should set up Source Boost to accomodate it? Thanks Conrad
  5. I am struggling to understand (it's early days) how to configure the Ports for LCD libraries. My intention eventually is to use a PIC16F877A and an LCD in 4bit mode. If I load boost4bit.__c project and I want to use the SourceBoost LCD plugin how should I configure it? I mean what ports? I can see that trisa is set to outputs and that #define LCD_E 0 #define LCD_RW 2 #define LCD_RS 1 I cannot however figure out what I should set DB4,5,6 & 7 to on the plugin. I know that DB0, 1,2 & 3 should be Vss in 4 bit mode. Initially I can experiment with a PIC16F84A but I have to avoid the use of RB0 because I need to count interrupts on that pin. I expect that I will use LCDs a lot in the future so mastering how to use and adapt the library will be useful. Conrad
  6. I have verified that the LCD is ok as I have it displaying some text. So I wonder what the problem could be with the FMesure project? Does anyone have any ideas? Conrad
  7. Hi Dave well I 'thought' that I had done what you suggested, yet when I looked at the unzipped folder it appeared to have some extra files in it. In hindsight I think that I must have tried to compile Lcd6Pin first. Anyway I unzipped the folder to a different location and all is ok with the compiler. Now the problem is that I can't get the LCD to work, it is definitely wired correctly, the datasheet suggests that it is pin compatible with the one shown on Gerard Burger's schematic. My LCD uses a KS0070B controller IC. Any ideas? Is there something I could use as a quick check to see if the LCD is functional? Conrad
  8. Hello I am having some problems compiling the FMesure program listed as an example from the SourceBoost pages. click here I am using the SourceBoost IDE but I confess to being new to the program. Presumably if I unzip the files and make sure that lcd6Pin.c and FMesure.c are included the project should build, link and compile ok. I get lots of errors such as the code below indicates. I am using C2C plus toolsuite with the matrix multimedia PPP parallel port programmer, although I think should be obvious from the output window code :-) Please help! Compiling... C:\PROGRA~1\SOURCE~1\c2c.exe -PPIC16F84 -SRC -ols -md -O2 -Ip16F84.inc -oFMesure.asm FMesure.c Lcd6Pin.c C2C-plus 5.9.1e C-compiler Copyright(C) 1998-99,2000-2005 by Pavel Baranov http://www.picant.com/c2c/c.html support@picant.com (Extended version) Licensed to: Conrad Farlow FMesure.c Lcd6Pin.c(94): Error: General error Lcd6Pin.c(155): Error: General error Lcd6Pin.c(206): Error: General error Lcd6Pin.c(206): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(214): Error: General error Lcd6Pin.c(214): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(239): Error: General error Lcd6Pin.c(241): Error: General error Lcd6Pin.c(241): Error: Error in function call. The function was declared as 'Write_8_Bit( char )' Lcd6Pin.c(242): Error: General error Lcd6Pin.c(243): Error: General error Lcd6Pin.c(243): Error: Error in function call. The function was declared as 'Write_8_Bit( char )' Lcd6Pin.c(244): Error: General error Lcd6Pin.c(245): Error: General error Lcd6Pin.c(245): Error: Error in function call. The function was declared as 'Write_8_Bit( char )' Lcd6Pin.c(246): Error: General error Lcd6Pin.c(248): Error: General error Lcd6Pin.c(248): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(249): Error: General error Lcd6Pin.c(251): Error: General error Lcd6Pin.c(251): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(252): Error: General error Lcd6Pin.c(253): Error: General error Lcd6Pin.c(253): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(254): Error: General error Lcd6Pin.c(255): Error: General error Lcd6Pin.c(255): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(256): Error: General error Lcd6Pin.c(257): Error: General error Lcd6Pin.c(257): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(258): Error: General error Lcd6Pin.c(274): Error: General error Lcd6Pin.c(274): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(285): Error: General error Lcd6Pin.c(285): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(295): Error: General error Lcd6Pin.c(295): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(307): Error: General error Lcd6Pin.c(307): Error: General error Lcd6Pin.c(309): Error: General error Lcd6Pin.c(309): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(313): Error: General error Lcd6Pin.c(323): Error: General error Lcd6Pin.c(323): Error: General error Lcd6Pin.c(325): Error: General error Lcd6Pin.c(325): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(329): Error: General error Lcd6Pin.c(341): Error: General error Lcd6Pin.c(345): Error: General error Lcd6Pin.c(345): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(349): Error: General error Lcd6Pin.c(354): Error: General error Lcd6Pin.c(354): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(355): Error: General error Lcd6Pin.c(355): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(356): Error: General error Lcd6Pin.c(356): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(357): Error: General error Lcd6Pin.c(357): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(358): Error: General error Lcd6Pin.c(358): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' FMesure.c(53): Error: General error FMesure.c(57): Error: General error FMesure.c(63): Error: General error in function definition Lcd6Pin.c Lcd6Pin.c(93): Error: The function 'Delay' is already defined Lcd6Pin.c(94): Error: General error Lcd6Pin.c(104): Error: The function 'Write_8_Bit' is already defined Lcd6Pin.c(108): Error: Variable expected Lcd6Pin.c(109): Error: Variable expected Lcd6Pin.c(111): Error: Variable expected Lcd6Pin.c(112): Error: Variable expected Lcd6Pin.c(114): Error: Variable expected Lcd6Pin.c(115): Error: Variable expected Lcd6Pin.c(117): Error: Variable expected Lcd6Pin.c(118): Error: Variable expected Lcd6Pin.c(120): Error: Variable expected Lcd6Pin.c(122): Error: Variable expected Lcd6Pin.c(132): Error: The function 'Write_4_Bit' is already defined Lcd6Pin.c(137): Error: Variable expected Lcd6Pin.c(138): Error: Variable expected Lcd6Pin.c(140): Error: Variable expected Lcd6Pin.c(141): Error: Variable expected Lcd6Pin.c(143): Error: Variable expected Lcd6Pin.c(144): Error: Variable expected Lcd6Pin.c(146): Error: Variable expected Lcd6Pin.c(147): Error: Variable expected Lcd6Pin.c(150): Error: Variable expected Lcd6Pin.c(152): Error: Variable expected Lcd6Pin.c(155): Error: General error Lcd6Pin.c(158): Error: Variable expected Lcd6Pin.c(159): Error: Variable expected Lcd6Pin.c(161): Error: Variable expected Lcd6Pin.c(162): Error: Variable expected Lcd6Pin.c(164): Error: Variable expected Lcd6Pin.c(165): Error: Variable expected Lcd6Pin.c(167): Error: Variable expected Lcd6Pin.c(168): Error: Variable expected Lcd6Pin.c(171): Error: Variable expected Lcd6Pin.c(173): Error: Variable expected Lcd6Pin.c(184): Error: The function 'DataMode' is already defined Lcd6Pin.c(185): Error: Variable expected Lcd6Pin.c(193): Error: The function 'FunctionMode' is already defined Lcd6Pin.c(194): Error: Variable expected Lcd6Pin.c(203): Error: The function 'LcdClear' is already defined Lcd6Pin.c(206): Error: General error Lcd6Pin.c(206): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(212): Error: The function 'Set8BitMode' is already defined Lcd6Pin.c(214): Error: General error Lcd6Pin.c(214): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(222): Error: The function 'LcdSetup' is already defined Lcd6Pin.c(225): Error: Variable expected Lcd6Pin.c(226): Error: Variable expected Lcd6Pin.c(227): Error: Variable expected Lcd6Pin.c(228): Error: Variable expected Lcd6Pin.c(229): Error: Variable expected Lcd6Pin.c(230): Error: Variable expected Lcd6Pin.c(233): Error: Variable expected Lcd6Pin.c(234): Error: Variable expected Lcd6Pin.c(239): Error: General error Lcd6Pin.c(241): Error: General error Lcd6Pin.c(241): Error: Error in function call. The function was declared as 'Write_8_Bit( char )' Lcd6Pin.c(242): Error: General error Lcd6Pin.c(243): Error: General error Lcd6Pin.c(243): Error: Error in function call. The function was declared as 'Write_8_Bit( char )' Lcd6Pin.c(244): Error: General error Lcd6Pin.c(245): Error: General error Lcd6Pin.c(245): Error: Error in function call. The function was declared as 'Write_8_Bit( char )' Lcd6Pin.c(246): Error: General error Lcd6Pin.c(248): Error: General error Lcd6Pin.c(248): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(249): Error: General error Lcd6Pin.c(251): Error: General error Lcd6Pin.c(251): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(252): Error: General error Lcd6Pin.c(253): Error: General error Lcd6Pin.c(253): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(254): Error: General error Lcd6Pin.c(255): Error: General error Lcd6Pin.c(255): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(256): Error: General error Lcd6Pin.c(257): Error: General error Lcd6Pin.c(257): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(258): Error: General error Lcd6Pin.c(271): Error: The function 'LcdSetPos' is already defined Lcd6Pin.c(274): Error: General error Lcd6Pin.c(274): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(283): Error: The function 'LcdLine1' is already defined Lcd6Pin.c(285): Error: General error Lcd6Pin.c(285): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(293): Error: The function 'LcdLine2' is already defined Lcd6Pin.c(295): Error: General error Lcd6Pin.c(295): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(303): Error: The function 'LcdClearLine1' is already defined Lcd6Pin.c(307): Error: General error Lcd6Pin.c(307): Error: General error Lcd6Pin.c(309): Error: General error Lcd6Pin.c(309): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(313): Error: General error Lcd6Pin.c(319): Error: The function 'LcdClearLine2' is already defined Lcd6Pin.c(323): Error: General error Lcd6Pin.c(323): Error: General error Lcd6Pin.c(325): Error: General error Lcd6Pin.c(325): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(329): Error: General error Lcd6Pin.c(335): Error: The function 'LcdWrite' is already defined Lcd6Pin.c(341): Error: General error Lcd6Pin.c(345): Error: General error Lcd6Pin.c(345): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(349): Error: General error Lcd6Pin.c(353): Error: The function 'LcdWriteInt' is already defined Lcd6Pin.c(354): Error: General error Lcd6Pin.c(354): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(355): Error: General error Lcd6Pin.c(355): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(356): Error: General error Lcd6Pin.c(356): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(357): Error: General error Lcd6Pin.c(357): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Lcd6Pin.c(358): Error: General error Lcd6Pin.c(358): Error: Error in function call. The function was declared as 'Write_4_Bit( char )' Finished. Failed to locate output file 'FMesure.asm' Done Failed
  9. I have been using the version of C2C that is supplied with the Matrix Multimedia PIC development kit but I needed to use a PIC16F877A and so upgraded to the SourceBoost package. The SourceBoost IDE has loaded sucessfully and I have sucessfully registered my password for both SourceBoost and C2C plus using the command line prompts. The problem is that there is no sign of the c2cw.exe program that appears in my Matrix multimedia directory. I did not uninstall the Matrix multimedia version of C2C so perhaps this is the problem. Can someone help please as initiallt I would like to continue using the C2C compiler until I have had time to familiarise myself with SourceBoost. Thanks Conrad
  10. I have a design project at University which is basically to make a handheld X band Doppler 'speed gun'. The basic requirement is to build something that will acquire and display speed in mph or kph with a range of 10-150 mph, an accuracy of +/- 1mph and an acquisition time of 0.5 seconds. It must be able to detect a moving vehicle at a distance of > 20m. I am to be supplied with an X band Doppler module which has a low noise amplifier fitted. The module has a WG16 flange for the connection of a horn which I also have to fabricate. I have calculated that the mixer diode output will be between 300-5000 Hz for the speed range mentioned. I will be using a PIC due to time and budget constraints (with more time/money I would have used DSP) and I can think of a few ways of getting a signal into the PIC. Traditionally students have used a few stages of amplification, followed by a Sallen Key filter and either a comparator or a diode clipper then used RB0 on the PIC to generate interrupts at zero crossing points which are counted subjected to some maths functions and displayed on an LCD display. That is ok if you have a nice clean signal with good amplitude but I have seen a few previous attempts and they all suffer from excessive gain with no agc, a huge horn and are easily confused if another target comes into the antenna aperture. I thought that a better approach may be to use two PLLs (or one PLL with switched filtering), one with a wide lock and capture range to acquire the target quickly and the second with a narrow capture range to retain lock and ignore other signals. I can either measure the VCO frequency (by counting) when it is locked or measure the control voltage if it is linear enough across the range of input frequencies. I will probably use a PIC16F877A as it has a UART to drive my display (asynchronous serial VFD), 10 bit ADC's and a PWM output which could be used for the PLL control if 2 PLLs were used. It is also nice to be able to indicate that a target has been acquired and that lock is maintained. I have had very little experience with PLLs so here are the questions :-) 1. Does this approach seem reasonable? 2. Can I get PLLs that give good sensitivity when AC coupled? 3. Is it possible to get adequate linearity across this range of input frequencies to use the ADC to measure the VCO control loop voltage. Of course I could use a look up table but I'd rather not! 4. Would something like an HEF4046 be good enough or is there a better device? I'd be really interested to find someone with experience with PLLs and PIC based frequency acquisition to point me in the right direction. Don't worry I want to do the work for myself but a few pointers wouldn't go amiss. Regards Conrad
×
×
  • Create New...