Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Revision 0:81b2090db26b, committed 2015-10-05
- Comitter:
- gorian
- Date:
- Mon Oct 05 19:47:12 2015 +0000
- Commit message:
- Very, very, very simple burner 0-10V signal converter
Changed in this revision
| main.cpp | Show annotated file Show diff for this revision Revisions of this file |
| mbed.bld | Show annotated file Show diff for this revision Revisions of this file |
diff -r 000000000000 -r 81b2090db26b main.cpp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp Mon Oct 05 19:47:12 2015 +0000
@@ -0,0 +1,128 @@
+#include "mbed.h"
+
+DigitalIn DI3(PB_7); // 1 od lewej //7
+DigitalIn iReset(PB_6); // 2
+DigitalIn iAwaria(PB_5); // 3
+DigitalIn iStart(PB_4); // 4
+
+//Wyjscia dyskretne - logika odwrotna - 1 - off; 0 - on
+
+DigitalOut oAwaria(PB_3); // 8 AWARIA
+DigitalOut oStart(PC_15); // 12 START
+DigitalOut oReset(PC_14); // 11 RESET
+DigitalOut oFire_minus(PB_9); // 10
+DigitalOut oFire_plus(PB_8); //9 od prawej
+
+//wejscia ciagle
+//AnalogIn Analog1(PC_2);
+AnalogIn Analog2(PC_1); //pierwszy od prawej (od zewnatrz)
+
+Serial pc(PA_9, PA_10);
+
+float Analog_medium=0;
+float Analog_sum = 0;
+float temp = 0;
+float mocpalnika;
+
+int a = 0;
+int b = 0;
+int c = 0;
+
+void Regulator_Gazu(void)
+{
+ Analog_sum = 0;
+ for(int counter = 0; counter<30; counter ++){
+ Analog_sum += Analog2.read();
+ }
+
+ Analog_medium = Analog_sum/30;
+
+ oStart = 0; //wl. palnik (start)
+
+ if(a < 60){
+
+ oFire_plus = 1; //wyl. plus
+ oFire_minus = 0; //wl. minus
+ a ++;
+ mocpalnika=0;
+ b=0;
+ c=0;
+ }
+ else{
+ oFire_minus=1; //wyl. minus
+ oFire_plus=1; //wyl. plus
+
+ temp = Analog_medium/0.033f;
+ if(mocpalnika < (temp-0.7)){
+ if(b < 32) b++;
+
+ switch(b){
+
+ case 1:
+ if(mocpalnika < 30)mocpalnika++;
+ oFire_plus = 0;
+ break;
+
+
+ case 10:
+ b=0;
+ break;
+
+ }
+ }
+ else{
+ b=0;
+ }
+
+ if(mocpalnika > (temp+1)){
+ if(c < 10) c++;
+
+ switch(c){
+
+ case 1:
+ if(mocpalnika > 1)mocpalnika--;
+ oFire_minus = 0;
+ break;
+
+
+ case 10:
+ c=0;
+ break;
+ }
+ }
+ else{
+ c=0;
+ }
+ }
+}
+
+
+int main() {
+
+ pc.printf("Przetwornik sygnalu palnika +/- -> 0-10V v. 1.0 \n\n\r");
+
+ oStart = oReset = oFire_minus = oFire_plus = 1; // LED is ON
+ wait(2.0); // 2s
+
+ while(1) {
+
+ if(iAwaria==1 and iStart==0)
+ {
+ pc.printf("\n\n\r");
+ pc.printf("Wartosc analoga: %f\n\r", Analog_medium);
+ Regulator_Gazu();
+ pc.printf("Moc palnika: %f\n\r", mocpalnika);
+ pc.printf("temp: %f\n\r", temp);
+ pc.printf("a: %d\n\rb: %d\n\rc: %d\n\r", a, b, c);
+ pc.printf("start: %d\n\rplus: %d\n\rminus: %d", oStart.read(), oFire_plus.read(), oFire_minus.read());
+ wait(1.0);
+ }
+ else{
+ oStart = 1;
+ oFire_plus = 1;
+ oFire_minus = 1;
+ oAwaria = 0;
+ a=0;
+ }
+ }
+}
diff -r 000000000000 -r 81b2090db26b mbed.bld --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed.bld Mon Oct 05 19:47:12 2015 +0000 @@ -0,0 +1,1 @@ +http://mbed.org/users/mbed_official/code/mbed/builds/8ed44a420e5c \ No newline at end of file