![]() |
Help with PSoC board programming please
can any one please show me how to program a PSoC board with a switch
or give me a sample code?? Quote:
|
Re: Help with PSoC board programming please
http://www.virtualroadside.com/WPILi...r_station.html
I have linked the relevant API documents. You can use DriverStation::GetDigitalIn([number]) to get the value of the switch. And PLEASE try to take a little more time writing your posts in the future. |
Re: Help with PSoC board programming please
Quote:
|
Re: Help with PSoC board programming please
The GetDigitalIn would be somewhere in your Teleop loop (before you need the data of course)
|
Re: Help with PSoC board programming please
Quote:
|
Re: Help with PSoC board programming please
The value of the switch...
|
Re: Help with PSoC board programming please
how do you make the PSoC board communicate with the driver station, i plugged it in but the driver station says:
Quote:
|
Re: Help with PSoC board programming please
Did you follow the steps in section 2.11 of the control system manual for configuring the I/O module?
|
Re: Help with PSoC board programming please
Quote:
Quote:
(sorry for so much questions, but im just learning) |
Re: Help with PSoC board programming please
Does the I/O light turn green in the Diagnostcs window?
Make sure you have the latest update to the DS software (1.2 I believe). You may need to uninstall and reinstall the Cypress software through the updater |
Re: Help with PSoC board programming please
Quote:
|
Re: Help with PSoC board programming please
To use the DriverStation functions, you have to create a DriverStation pointer and set it with DriverStation::GetInstance(). You can then use GetDigitalIn only on the first 8 pins. The DS must also be set to Compatible I/O mode (through I/O screen). If you want to use any of the advanced functionality available through the PSoC board, the system is a bit different (will show with code)
Using DriverStation Code:
public:Code:
Teleop() { |
Re: Help with PSoC board programming please
for the first one, would the operator code look like this:
Code:
and i tried the enhanced io but it gives me a warning that "dsio" is a unused varible |
Re: Help with PSoC board programming please
switch is a bool variable. Did you declare it? dsio being unused is an effect of the = error because the compiler doesn't recognize that line as valid, so no go on using it.
Also, the logic on your version is bad. My version was writing the value of the digital in to a variable. Yours is using that value in a switch statement, which is used when you have different values to run between (a fancy if statement pretty much). Additionally, you are ending the switch without any code because of the ; at the end of the line. You then go onto write a block of code that will execute on every loop. Plus you throw a wait in there. not good. It will compile, but most likely will not run. This is what I think you want: Code:
void OperatorControl() {If you absolutely need the 1 second run of the motor, I suggest you export the code for this to another task and communicate via a class variable |
Re: Help with PSoC board programming please
Quote:
|
| All times are GMT -5. The time now is 12:32. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi