Karl Fischer / NixieTube

NixieTube.h

Committer:
fischk08
Date:
2016-12-05
Revision:
0:34f3e0f37c55
Child:
1:0470cc006ce7

File content as of revision 0:34f3e0f37c55:

/* NixieTube.h */
#ifndef NIXIETUBE_H_
#define NIXIETUBE_H_

#include "mbed.h"
#include "rtos.h"
 // How to deal with this problem  https://developer.mbed.org/forum/mbed/topic/4388/
class NixieTube
{
    public:
        NixieTube(PinName,PinName,PinName,PinName) ;
        ~NixieTube();
        void start_nixie();
        void update_nixie_tube(int,int);
        void set_dim(float,int);
    private:
        /** Copy constructor
         *  Disable because it is only declaration
         */
        NixieTube(const NixieTube&);
        
        /** Copy assignment operators
         *  Disable because it is only declaration
         */
        NixieTube& operator=(const NixieTube&);    
        DigitalOut _sdi;
        DigitalOut _scl;
        DigitalOut _rcl;
        PwmOut _cen;
        int digit1;
        int digit2;
        int digit3;
        int digit4;
        uint32_t delay1;
        uint32_t delay2;
        float brightness;
        void nixie_thread();
        int nixie_id_convert(int);
        void send_nixie_shiftreg(int, int, int);
        Thread* thread;
        
        static void threadStarter(void const *p);
        void threadWorker();
        Thread _thread;
        
};

#endif /* NIXIETUBE_H_ */